【发布时间】:2021-06-06 11:49:59
【问题描述】:
我无法使用 Imagick 检测或转换 php 中的 heic 图像。奇怪的是,我可以使用命令行读取甚至转换图像。其他格式,如 png、jpeg、pdf 等。
我在 XAMPP for Windows 上使用“Version: ImageMagick 7.0.10-48 Q16 x64”。控制台告诉我 heic 是一个内置的代表团。但是在 php 中打印出Imagick::queryFormats() 并没有显示任何 heic 的迹象作为支持的格式。
此外,当尝试读取图像 blob 时,它会引发 Imagick:NoDecodeDelegateForThisImageFormat "" @ error/blob.c/BlobToImage/449 错误。
为什么控制台支持格式而php不支持?我错过了一些文件吗? 我试过谷歌,但是 - 像往常一样 - 搜索 imagick 相关的东西没有成功。
【问题讨论】:
-
检查delegates.xml文件中是否有heic的条目。如果是这样,请确保它具有通向 heic 的完整路径。 PDF 文件和 ghostscript (gs) 会发生这种情况。 delegates.xml 文件只显示gs,但它需要gs 前面的ghostscript 的完整路径。因此,heic 文件可能正在发生这种情况。对不起,这只是一个猜测。我还没用过 heic 文件。