2009-08-25 117 views
4

我可以從CLI執行哪些命令或一系列命令以遞歸遍歷目錄樹並將該樹內所有PNG文件的位深度從24bpp減少到16bpp?命令應該保留alpha層,不應該增加PNG的文件大小 - 事實上,減少會更好。從命令行減少PNG文件的位深度

我有一個基於OSX的系統可供我使用,並且熟悉find命令,因此我們更熱衷於找到合適的PNG實用程序命令。

回答

2

AFAIK唯一支持alpha層的PNG格式是PNG-24;將PNG縮小爲另一種格式可能需要在CLUT中指定一個透明顏色,這不會給你所需的輸出。

從上PNG網站的功能列表:

  • 8位和16位每樣本(即,24位和48位)真彩色支持
  • 全字母在8透明度和16位模式,而不僅僅是簡單的開關透明度如GIF

...我讀意味着以外的任何其他PNG-24或PNG-48不支持完整的Alpha透明度。

+0

謝謝 - 我不知道這個PNG限制,所以你節省了我一些時間。 – teabot 2009-08-25 18:19:00

+1

@teabot Paletted PNGs * do *支持完整的alpha透明度,請參閱http://pngquant.org – Kornel 2012-03-19 17:44:41

3
  1. 安裝芬克

  2. 說 「芬克安裝的ImageMagick」(可能是 「ImageMagick的」)

  3. 「轉換-depth 16歲/ foo.png新/ foo.png」

  4. 如果這樣做你想要的,把它包裝在查找電話,並開心。如果沒有,請說「convert -help」和RTF-ImageMagick-M。 :)

  5. 可選:「fink install pngcrush」並在轉換後執行第二遍。