答案 0 :(得分:0)
这似乎经常发生在Magento 1.9.3.3或应用补丁SUPEE 9767
之后。
请阅读此Watermark get black background when transparent
答案 1 :(得分:0)
有同样的问题,在补丁之前上传了旧的lib / Varien / Image / Adapter / Gd2.php并重新开始工作。
答案 2 :(得分:0)
我的Magento版本1.9.3.3也有同样的问题。下面的修复解决了我的问题
扩展此类文件Mage_Core_Model_File_Validator_Image
。
创建模块:
Magegeeks_Core_Model_File_Validator_Image
的克里特文件,内容低于:
class Magegeeks_Core_Model_File_Validator_Image extends Mage_Core_Model_File_Validator_Image
{
/**
* Validation callback for checking is file is image
*
* @param string $filePath Path to temporary uploaded file
* @return null
* @throws Mage_Core_Exception
*/
public function validate($filePath)
{
list($imageWidth, $imageHeight, $fileType) = getimagesize($filePath);
if ($fileType) {
if ($this->isImageType($fileType)) {
//replace tmp image with re-sampled copy to exclude images with malicious data
$image = imagecreatefromstring(file_get_contents($filePath));
if ($image !== false) {
$img = imagecreatetruecolor($imageWidth, $imageHeight);
imagealphablending($img, false);
imagecopyresampled($img, $image, 0, 0, 0, 0, $imageWidth, $imageHeight, $imageWidth, $imageHeight);
imagesavealpha($img, true);
switch ($fileType) {
case IMAGETYPE_GIF:
imagegif($img, $filePath);
break;
case IMAGETYPE_JPEG:
imagejpeg($img, $filePath, 100);
break;
case IMAGETYPE_PNG:
imagepng($img, $filePath);
break;
default:
return;
}
imagedestroy($img);
imagedestroy($image);
return null;
} else {
throw Mage::exception('Mage_Core', Mage::helper('core')->__('Invalid image.'));
}
}
}
throw Mage::exception('Mage_Core', Mage::helper('core')->__('Invalid MIME type.'));
}
在etc / config.xml文件中:
<config>
<modules>
<Magegeeks_Core>
<version>0.0.1</version>
</Magegeeks_Core>
</modules>
<global>
<models>
<sdm_core>
<class>Magegeeks_Core_Model</class>
</sdm_core>
<core>
<rewrite>
<file_validator_image>SDM_Core_Model_File_Validator_Image</file_validator_image>
</rewrite>
</core>
</models>
</global>
</config>
应用的/ etc /模块/ Magegeeks_Core.xml 强>
<config>
<modules>
<Magegeeks_Core>
<active>true</active>
<codePool>local</codePool>
</Magegeeks_Core>
</modules>
</config>
希望这能解决你的问题。