ImageMagick 使用指南的Alpha Remove部分建议使用该选项,例如:-alpha remove
convert in.png -background white -alpha remove out.png
...使用-background
您选择的颜色。
该指南指出:
此操作简单快速,无需任何额外的内存使用或其他可能与替代透明度去除技术相关的副作用即可完成这项工作。因此,这是消除图像透明度的首选方式。
它还添加了注释:
请注意,当透明度被“移除”时,Alpha 通道将保持打开状态,但现在将完全不透明。如果您不再需要 Alpha 通道,则可以使用 Alpha Off 禁用它。
因此,如果您不需要 alpha 通道,您可以通过添加-alpha off
选项来缩小输出图像尺寸,例如:
convert in.png -background white -alpha remove -alpha off out.png
在“从图像中删除透明度”部分中描述了其他常用的用于删除透明度的技术的更多详细信息。
该部分中提到了一个重要的警告,即-flatten
作为一种消除透明度的技术的使用:
但是,这不适用于“mogrify”或多个图像序列,主要是因为“-flatten”运算符实际上旨在将多个图像合并为单个图像。
因此,如果您同时转换多张图像,例如从 PDF 文件生成缩略图,-flatten
将无法实现您想要的效果(它会将所有页面的所有图像拼合为一张图像)。另一方面,使用该-alpha remove
技术仍会产生多幅图像,每幅图像都去除了透明度。