From 9584ca080c10777407c59c5939dd0cf2a88a847b Mon Sep 17 00:00:00 2001 From: redmatrix Date: Wed, 13 Jan 2016 17:32:09 -0800 Subject: some initial work on uploading and cropping cover photos --- include/photo/photo_imagick.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'include/photo/photo_imagick.php') diff --git a/include/photo/photo_imagick.php b/include/photo/photo_imagick.php index 3f84fd06c..32bb61342 100644 --- a/include/photo/photo_imagick.php +++ b/include/photo/photo_imagick.php @@ -163,6 +163,24 @@ class photo_imagick extends photo_driver { $this->doScaleImage($max,$max); } + public function cropImageRect($maxx,$maxy,$x,$y,$w,$h) { + if(!$this->is_valid()) + return FALSE; + + $this->image->setFirstIterator(); + do { + $this->image->cropImage($w, $h, $x, $y); + /** + * We need to remove the canvas, + * or the image is not resized to the crop: + * http://php.net/manual/en/imagick.cropimage.php#97232 + */ + $this->image->setImagePage(0, 0, 0, 0); + } while ($this->image->nextImage()); + + $this->doScaleImage($maxx,$maxy); + } + public function imageString() { if(!$this->is_valid()) return FALSE; -- cgit v1.2.3