15 $source = $this->
argument(0)->required()->value();
16 $position = $this->
argument(1)->type(
'string')->value();
17 $x = $this->
argument(2)->type(
'digit')->value(0);
18 $y = $this->
argument(3)->type(
'digit')->value(0);
21 $watermark = $image->getDriver()->init($source);
24 $image_size = $image->getSize()->align($position, $x, $y);
25 $watermark_size = $watermark->getSize()->align($position);
26 $target = $image_size->relativePosition($watermark_size);
29 return $image->getCore()->compositeImage($watermark->getCore(), \Imagick::COMPOSITE_DEFAULT, $target->x, $target->y);