我发现我的 Imagick 安装中没有 PNG 支持,所以我安装了libpng。现在我可以看到运行命令时支持 PNG 格式
convert -list format
从 PNG 到 JPG 的转换可以从命令行正常工作:
convert a.png b.jpg
但是当我尝试在 PHP 中读取 PNG 文件时:
$src = new \Imagick();
$src->readImageBlob( file_get_contents($file) ); // reading PNG format
- 它给了我错误 500(“...没有此图像格式的解码委托”)
此外,当我运行时phpinfo()
- 我在 Imagick 支持的文件格式列表中看不到 PNG。还有很多其他的,但没有PNG。
我尝试重新安装 PHP Imagick 驱动程序,然后重新启动 apache - 仍然没有成功。
PS:我有 PHP 5.4 @ CentOS