composer package updates
[openemr.git] / vendor / dompdf / dompdf / src / Positioner / AbstractPositioner.php
blob2ade6afcba39c205a6847a4e7b2ce73125ec08c5
1 <?php
2 /**
3 * @package dompdf
4 * @link http://dompdf.github.com/
5 * @author Benj Carson <benjcarson@digitaljunkies.ca>
6 * @license http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
7 */
9 namespace Dompdf\Positioner;
11 use Dompdf\FrameDecorator\AbstractFrameDecorator;
13 /**
14 * Base AbstractPositioner class
16 * Defines postioner interface
18 * @access private
19 * @package dompdf
21 abstract class AbstractPositioner
24 /**
25 * @param AbstractFrameDecorator $frame
26 * @return mixed
28 abstract function position(AbstractFrameDecorator $frame);
30 /**
31 * @param AbstractFrameDecorator $frame
32 * @param $offset_x
33 * @param $offset_y
34 * @param bool $ignore_self
36 function move(AbstractFrameDecorator $frame, $offset_x, $offset_y, $ignore_self = false)
38 list($x, $y) = $frame->get_position();
40 if (!$ignore_self) {
41 $frame->set_position($x + $offset_x, $y + $offset_y);
44 foreach ($frame->get_children() as $child) {
45 $child->move($offset_x, $offset_y);