在 22.04 版中,使用 ImageMagick 创建具有透明度的 AVIF 或 HEIC 图像不起作用

在 22.04 版中,使用 ImageMagick 创建具有透明度的 AVIF 或 HEIC 图像不起作用

升级到 Ubuntu 22.04 后,我惊喜地发现使用新的AVIF或者赫伊克默认支持格式。

这很轻松。

convert image.png image.avif
convert image.png image.heic

不幸的是,透明度不起作用;两种格式都转换为黑色。

那么,创建透明 AVIF 或 HEIC 图像是否需要任何特殊设置convert

答案1

您正在使用哪个版本的 ImageMagick?

我之前通过 Ubuntu apt 存储库(即 apt install imagemagick)运行 6.9 并且遇到了同样的问题。

我卸载了它并从这里获取了最新的 AppImage: https://imagemagick.org/script/download.php#linux并使其可执行chmod a+x magick,然后将其移动到 usr/bin 文件夹,以便我可以在任何地方运行 magick。

主要区别在于您的命令将看起来像magick convert ...而不是,convert ...并且 AVIF 问题也得到了解决:)

编辑:似乎实际的 MIME 类型结果是 image/png 而不是 image/avif。使用 heic 委托手动编译 ImageMagick 似乎应该可以工作。

我不确定这是否是 AppImage 的预期行为,目前看来手动编译可能是唯一的方法。

答案2

这是 Ubuntu 22.04 附带的 ImageMagick 6.9.11 的一个已知问题:https://bugs.launchpad.net/ubuntu/+source/imagemagick/+bug/1980124

Debian 错误报告:https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1040307

考虑从源代码构建 ImageMagick以获取较新版本,或者在下一个 Ubuntu LTS 版本发布时升级到该版本。

相关内容