279 lines
6.2 KiB
PHP
279 lines
6.2 KiB
PHP
<?php
|
|
/**
|
|
* This file is part of PHPWord - A pure PHP library for reading and writing
|
|
* word processing documents.
|
|
*
|
|
* PHPWord is free software distributed under the terms of the GNU Lesser
|
|
* General Public License version 3 as published by the Free Software Foundation.
|
|
*
|
|
* For the full copyright and license information, please read the LICENSE
|
|
* file that was distributed with this source code. For the full list of
|
|
* contributors, visit https://github.com/PHPOffice/PHPWord/contributors.
|
|
*
|
|
* @see https://github.com/PHPOffice/PHPWord
|
|
* @copyright 2010-2018 PHPWord contributors
|
|
* @license http://www.gnu.org/licenses/lgpl.txt LGPL version 3
|
|
*/
|
|
|
|
namespace PhpOffice\PhpWord\Style;
|
|
|
|
/**
|
|
* Image and memory image style
|
|
*/
|
|
class Image extends Frame
|
|
{
|
|
/**
|
|
* Backward compatibility constants
|
|
*
|
|
* @const string
|
|
*/
|
|
const WRAPPING_STYLE_INLINE = self::WRAP_INLINE;
|
|
const WRAPPING_STYLE_SQUARE = self::WRAP_SQUARE;
|
|
const WRAPPING_STYLE_TIGHT = self::WRAP_TIGHT;
|
|
const WRAPPING_STYLE_BEHIND = self::WRAP_BEHIND;
|
|
const WRAPPING_STYLE_INFRONT = self::WRAP_INFRONT;
|
|
const POSITION_HORIZONTAL_LEFT = self::POS_LEFT;
|
|
const POSITION_HORIZONTAL_CENTER = self::POS_CENTER;
|
|
const POSITION_HORIZONTAL_RIGHT = self::POS_RIGHT;
|
|
const POSITION_VERTICAL_TOP = self::POS_TOP;
|
|
const POSITION_VERTICAL_CENTER = self::POS_CENTER;
|
|
const POSITION_VERTICAL_BOTTOM = self::POS_BOTTOM;
|
|
const POSITION_VERTICAL_INSIDE = self::POS_INSIDE;
|
|
const POSITION_VERTICAL_OUTSIDE = self::POS_OUTSIDE;
|
|
const POSITION_RELATIVE_TO_MARGIN = self::POS_RELTO_MARGIN;
|
|
const POSITION_RELATIVE_TO_PAGE = self::POS_RELTO_PAGE;
|
|
const POSITION_RELATIVE_TO_COLUMN = self::POS_RELTO_COLUMN;
|
|
const POSITION_RELATIVE_TO_CHAR = self::POS_RELTO_CHAR;
|
|
const POSITION_RELATIVE_TO_TEXT = self::POS_RELTO_TEXT;
|
|
const POSITION_RELATIVE_TO_LINE = self::POS_RELTO_LINE;
|
|
const POSITION_RELATIVE_TO_LMARGIN = self::POS_RELTO_LMARGIN;
|
|
const POSITION_RELATIVE_TO_RMARGIN = self::POS_RELTO_RMARGIN;
|
|
const POSITION_RELATIVE_TO_TMARGIN = self::POS_RELTO_TMARGIN;
|
|
const POSITION_RELATIVE_TO_BMARGIN = self::POS_RELTO_BMARGIN;
|
|
const POSITION_RELATIVE_TO_IMARGIN = self::POS_RELTO_IMARGIN;
|
|
const POSITION_RELATIVE_TO_OMARGIN = self::POS_RELTO_OMARGIN;
|
|
const POSITION_ABSOLUTE = self::POS_ABSOLUTE;
|
|
const POSITION_RELATIVE = self::POS_RELATIVE;
|
|
|
|
/**
|
|
* Create new instance
|
|
*/
|
|
public function __construct()
|
|
{
|
|
parent::__construct();
|
|
$this->setUnit(self::UNIT_PT);
|
|
|
|
// Backward compatibility setting
|
|
// @todo Remove on 1.0.0
|
|
$this->setWrap(self::WRAPPING_STYLE_INLINE);
|
|
$this->setHPos(self::POSITION_HORIZONTAL_LEFT);
|
|
$this->setHPosRelTo(self::POSITION_RELATIVE_TO_CHAR);
|
|
$this->setVPos(self::POSITION_VERTICAL_TOP);
|
|
$this->setVPosRelTo(self::POSITION_RELATIVE_TO_LINE);
|
|
}
|
|
|
|
/**
|
|
* Get margin top
|
|
*
|
|
* @return int|float
|
|
*/
|
|
public function getMarginTop()
|
|
{
|
|
return $this->getTop();
|
|
}
|
|
|
|
/**
|
|
* Set margin top
|
|
*
|
|
* @ignoreScrutinizerPatch
|
|
* @param int|float $value
|
|
* @return self
|
|
*/
|
|
public function setMarginTop($value = 0)
|
|
{
|
|
$this->setTop($value);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get margin left
|
|
*
|
|
* @return int|float
|
|
*/
|
|
public function getMarginLeft()
|
|
{
|
|
return $this->getLeft();
|
|
}
|
|
|
|
/**
|
|
* Set margin left
|
|
*
|
|
* @ignoreScrutinizerPatch
|
|
* @param int|float $value
|
|
* @return self
|
|
*/
|
|
public function setMarginLeft($value = 0)
|
|
{
|
|
$this->setLeft($value);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get wrapping style
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getWrappingStyle()
|
|
{
|
|
return $this->getWrap();
|
|
}
|
|
|
|
/**
|
|
* Set wrapping style
|
|
*
|
|
* @param string $wrappingStyle
|
|
*
|
|
* @throws \InvalidArgumentException
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setWrappingStyle($wrappingStyle)
|
|
{
|
|
$this->setWrap($wrappingStyle);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get positioning type
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getPositioning()
|
|
{
|
|
return $this->getPos();
|
|
}
|
|
|
|
/**
|
|
* Set positioning type
|
|
*
|
|
* @param string $positioning
|
|
*
|
|
* @throws \InvalidArgumentException
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setPositioning($positioning)
|
|
{
|
|
$this->setPos($positioning);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get horizontal alignment
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getPosHorizontal()
|
|
{
|
|
return $this->getHPos();
|
|
}
|
|
|
|
/**
|
|
* Set horizontal alignment
|
|
*
|
|
* @param string $alignment
|
|
*
|
|
* @throws \InvalidArgumentException
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setPosHorizontal($alignment)
|
|
{
|
|
$this->setHPos($alignment);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get vertical alignment
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getPosVertical()
|
|
{
|
|
return $this->getVPos();
|
|
}
|
|
|
|
/**
|
|
* Set vertical alignment
|
|
*
|
|
* @param string $alignment
|
|
*
|
|
* @throws \InvalidArgumentException
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setPosVertical($alignment)
|
|
{
|
|
$this->setVPos($alignment);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get horizontal relation
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getPosHorizontalRel()
|
|
{
|
|
return $this->getHPosRelTo();
|
|
}
|
|
|
|
/**
|
|
* Set horizontal relation
|
|
*
|
|
* @param string $relto
|
|
*
|
|
* @throws \InvalidArgumentException
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setPosHorizontalRel($relto)
|
|
{
|
|
$this->setHPosRelTo($relto);
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get vertical relation
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getPosVerticalRel()
|
|
{
|
|
return $this->getVPosRelTo();
|
|
}
|
|
|
|
/**
|
|
* Set vertical relation
|
|
*
|
|
* @param string $relto
|
|
*
|
|
* @throws \InvalidArgumentException
|
|
*
|
|
* @return self
|
|
*/
|
|
public function setPosVerticalRel($relto)
|
|
{
|
|
$this->setVPosRelTo($relto);
|
|
|
|
return $this;
|
|
}
|
|
}
|