我发誓这张图片已正确转换为带有黑色线条艺术的白色背景 JPG。这是原始 PNG(以防 SE 在您上传时更改它)。它看起来是这样的:
但这是我在执行此操作时看到的 JPG convert fire.png fire.jpg
:
再次,我在某个时候成功地将这个透明 PNG 转换为白色背景 JPG,使用这个精确的 PNG 输入图像。但现在不行了。我能想到的唯一改变是我将其保存在 GitHub 分支中,创建了一个新的 GitHub 分支,将文件移动到新文件夹中,提交并合并回主分支。那么也许 Git 中的二进制图像以某种奇怪的方式发生变化?
另一件事是,它是否与图像所在的文件夹或它们所在的文件路径有关?
convert ../external-directory/fire.png ./local-directory/fire.jpg
convert /absolute/path/fire.png ./local-directory/fire.jpg
convert "/absolute/path/fire.png" "./local-directory/fire.jpg"
我在不同的文件路径中尝试了几个带/不带引号的组合,但没有任何变化。
知道出了什么问题以及如何解决吗?也许我失去了理智,因为图像是透明的,这就是造成问题的原因。但我发誓这之前已经成功转换了。
我使用的是装有 ImageMagick 7.1.1-27 的 Mac M3。
据我所知,如果 ImageMagick 不能代表透明度,它总是使用黑色作为默认背景。通过指定自定义背景颜色
-background
:我使用的几个应用程序坚持认为该图像不是合法的 PNG 文件,因此它可能已损坏或具有奇异变体。无论如何,除了在浏览器中之外,我无法打开它来检查任何内容。
如果图像使用透明度,它将被删除,留下黑色。您可以将颜色更改为您想要的任何颜色: