[BUGFIX] Fix cropping of transparent gifs with im6. 72/23872/2
authorStefan Neufeind <typo3.neufeind@speedpartner.de>
Thu, 25 Apr 2013 12:06:49 +0000 (14:06 +0200)
committerWouter Wolters <typo3@wouterwolters.nl>
Tue, 17 Sep 2013 17:20:52 +0000 (19:20 +0200)
The usage of the ! operator to force cropping empty image
canvas is inverted between ImageMagick v4 and v6 while
GraphicsMagick accepts both syntaxes. Because im4 is
deprecated, we can always use im6 syntax.

Fixes: #19045
Releases: 6.2, 6.1, 6.0
Change-Id: Iee1260a94f2686a512ce1b1df65c384319a4c4de
Reviewed-on: https://review.typo3.org/23872
Reviewed-by: Stefan Neufeind
Reviewed-by: Wouter Wolters
Tested-by: Wouter Wolters
typo3/sysext/core/Classes/Imaging/GraphicalFunctions.php

index bca1fee..c6ea557 100644 (file)
@@ -2309,7 +2309,7 @@ class GraphicalFunctions {
                                        }
                                        $offsetX = intval(($data[0] - $data['origW']) * ($data['cropH'] + 100) / 200);
                                        $offsetY = intval(($data[1] - $data['origH']) * ($data['cropV'] + 100) / 200);
-                                       $params .= ' -crop ' . $data['origW'] . 'x' . $data['origH'] . '+' . $offsetX . '+' . $offsetY . ' ';
+                                       $params .= ' -crop ' . $data['origW'] . 'x' . $data['origH'] . '+' . $offsetX . '+' . $offsetY . '! ';
                                }
                                $command = $this->scalecmd . ' ' . $info[0] . 'x' . $info[1] . '! ' . $params . ' ';
                                $cropscale = $data['crs'] ? 'crs-V' . $data['cropV'] . 'H' . $data['cropH'] : '';