iconutil错误:“Unsuported图像格式”

时间:2016-04-07 18:22:48

标签: macos bash homebrew libpng iconutil

我一直在尝试使用iconutil从文件夹“folderthumb.iconset”中的.png图像生成.icns图标,并使用以下命令:

iconutil -c icns folderthumb.iconset

当源png具有alpha透明度时,一切顺利。但是,当PNG不透明时(来自sips,hasAlpha = no),iconutil会返回错误:

  

未报告的图片格式

我的libpng是v1.6,与brew一起安装。

有没有关于如何解决此问题的提示?

1 个答案:

答案 0 :(得分:5)

早期版本的iconutil不要求png文件有alpha通道,iconutil的版本随OS X 10.11一起分发(或者是否带有最新的Xcode?我不确定......)

如果你有带透明部分的图标,这应该没问题,因为我希望所有图形工具在导出到png时都包含alpha通道。但是,如果您有完全不透明的图标,则大多数工具和应用程序在导出到png时会删除Alpha通道。

以下是我解决这个问题的方法:我安装了ImageMagick(例如通过Mac OS端口),然后使用ImageMagick的命令行工具convert添加alpha通道并将颜色空间设置为sRGB(其中是iconutil推荐的:

convert input.png -alpha Set -colorspace sRGB -define png:format=png32 output.png

如果对iconset文件夹中的所有图标执行此操作,则iconutil不应再返回错误。