diff options
author | zotlabs <mike@macgirvin.com> | 2018-04-22 18:12:16 -0700 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2018-04-22 18:12:16 -0700 |
commit | 55dc6fbc1cae70e4f2b207c517c8c9155fda9662 (patch) | |
tree | 9ddc0e8c082e01695d6156f9a98407cc6824b254 /include/photo/photo_imagick.php | |
parent | 95059f2bfd2c7dbffe4dba2df277f7356fb124a1 (diff) | |
download | volse-hubzilla-55dc6fbc1cae70e4f2b207c517c8c9155fda9662.tar.gz volse-hubzilla-55dc6fbc1cae70e4f2b207c517c8c9155fda9662.tar.bz2 volse-hubzilla-55dc6fbc1cae70e4f2b207c517c8c9155fda9662.zip |
imagemagick preserves exif when scaling. GD does not. We do not want to preserve exif on thumbnails which we have rotated, as a browser reading the exif information could rotate them yet again. This checkin adds an abstract function to the generic photo driver which makes the behaviour consistent by stripping EXIF from imagick processed images. However, we will attempt to preserve any ICC colour profiles. See http://php.net/manual/en/imagick.stripimage.php
Diffstat (limited to 'include/photo/photo_imagick.php')
-rw-r--r-- | include/photo/photo_imagick.php | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/photo/photo_imagick.php b/include/photo/photo_imagick.php index 32bb61342..89577e71e 100644 --- a/include/photo/photo_imagick.php +++ b/include/photo/photo_imagick.php @@ -96,6 +96,19 @@ class photo_imagick extends photo_driver { } + public function clearexif() { + + $profiles = $this->image->getImageProfiles("icc", true); + + $this->image->stripImage(); + + if(!empty($profiles)) { + $this->image->profileImage("icc", $profiles['icc']); + } + } + + + public function getImage() { if(!$this->is_valid()) return FALSE; |