digitalpoint
Well-known member
In the XenForo_Image_Imagemagick_Pecl class, these lines:
	
	
	
		
 
should be:
	
	
	
		
 
It's confusing how ImageMagick has the method for the *object* and a different method for the image. Either way, currently XenForo is setting the compression for the object, which does not affect the image. You can test is by setting the $quality to 1 (or 100) and it outputs the same filesize (which is 86 since that's ImageMagick's default).
 
Using the setImageCompressionQuality method does actually alter the image quality as expected.
				
			
		PHP:
	
	&& $this->_image->setCompression(Imagick::COMPRESSION_JPEG)
&& $this->_image->setCompressionQuality($quality);
	should be:
		PHP:
	
	&& $this->_image->setImageCompression(Imagick::COMPRESSION_JPEG)
&& $this->_image->setImageCompressionQuality($quality);
	It's confusing how ImageMagick has the method for the *object* and a different method for the image. Either way, currently XenForo is setting the compression for the object, which does not affect the image. You can test is by setting the $quality to 1 (or 100) and it outputs the same filesize (which is 86 since that's ImageMagick's default).
Using the setImageCompressionQuality method does actually alter the image quality as expected.