当我在PHP中使用Imagick来调整PNG图像的大小时,输出图像是黑色的。当我调整JPG大小时,情况并非如此; PHP程序(下面提供)适用于JPG,所以我怀疑处理PNG文件时缺少一步。
我首先使用此命令在本地计算机上使用ImageMagick测试转换:
convert x.png -resize 528 -filter Lanczos x-resized.png
......它有效;生成的PNG文件显示并适当调整大小。
但是,当我尝试在我的服务器(localhost和live)上执行相同操作时,结果是黑色图像。
我正在使用的PHP代码是:
$source = "x.png" // I provide the complete path in my routine, etc.
$destination = "x-resized.png" // likewise.
$im = new Imagick();
$im->readImage($source);
$im->setImageFormat("png");
$im->resizeImage(528, null, Imagick::FILTER_LANCZOS, 1);
$im->writeImage($destination);
$im->clear();
我做错了什么?