pngquant是一種PNG壓縮程序,可通過將圖像轉換為具有alpha通道的更有效的8位PNG格式(通常比24/32位PNG文件小60-80%)來顯著減小文件大小。壓縮圖像完全符合標準,并且受所有Web瀏覽器和操作系統支持。
這是官方pngquant
資料庫。壓縮引擎也可以作為可嵌入庫使用。
這個項目最吸引我的還是ImageOptim?API-自動使用的圖像壓縮Web服務pngquant
。
- 官方網站: https://pngquant.org/
- Github: https://github.com/kornelski/pngquant
本站下載:
來源于Github
[b2_file link="https://cdn.getimg.net/npc/2019/github/pngquant-github-20191127.zip" name="pngquant-github-20191127.zip" pass="" code=""]
來源于官網:
[b2_file link="https://cdn.getimg.net/npc/2019/github/pngquant-2.12.5-src.tar.gz" name="pngquant-2.12.5-src.tar.gz" pass="" code=""]
用法
- 批量轉換多個文件:?
pngquant *.png
- Unix風格的stdin / stdout鏈接:?
… | pngquant - | …
要進一步減小文件大小,請嘗試使用optipng,ImageOptim或zopflipng。
特征
- 高質量調色板生成
- 支持伽馬校正和預乘alpha的高級量化算法
- 獨特的抖動算法,不會給圖像增加不必要的噪音
- 可配置的質量等級
- 自動查找所需的顏色數量,并可以跳過無法以所需質量轉換的圖像
- 快速,現代的代碼
- 基于可移植的libimagequant庫
- C99,沒有針對舊版系統或編譯器的解決方法(除了Visual Studio)
- 多核支持(通過OpenMP)和英特爾SSE優化
選件
請參閱pngquant -h
完整列表。
--quality min-max
min
和max
介于0(最差)到100(完美)之間的數字,類似于JPEG。pngquant將使用達到或超過max
質量要求的最少顏色數量。如果轉換后的質量低于min
質量,則將不會保存圖像(如果輸出到stdin,則將輸出24位原始圖像),并且pngquant會退出,并顯示狀態碼99。
pngquant --quality=65-80 image.png
--ext new.png
設置輸出文件名的自定義擴展名(后綴)。默認情況下-or8.png
還是-fs8.png
使用。如果使用--ext=.png --force
選項,則pngquant將覆蓋輸入文件(請謹慎使用)。
-o out.png
?要么?--output out.png
將轉換后的文件寫入給定路徑。使用此選項時,僅允許單個輸入文件。
--skip-if-larger
如果轉換不值得,請不要編寫轉換后的文件。
--speed N
速度/質量的權衡從1(最慢,最高質量,最小文件)到11(最快,不太穩定的質量,輕壓縮)。默認值為4。除非您需要實時生成圖像(例如地圖圖塊),否則建議保留默認值。較高的速度可以處理256色,但不能很好地處理較少的顏色。
--nofs
禁用Floyd-Steinberg抖動。
--floyd=0.5
控制抖動級別(0 =無,1 =滿)。請注意,該=
字符是必需的。
--posterize bits
通過位數減少調色板的精度。當圖像將顯示在低深度屏幕(例如16位顯示器或ARGB444格式的壓縮紋理)上時使用。
--strip
不要復制可選的PNG塊。在Mac上(使用Cocoa閱讀器時)總是會刪除元數據。
有關選項的完整列表,請參見手冊頁(man pngquant
)。
執照
pngquant是雙重許可的:
- 在GPL v3或更高版本中,帶有附加版權聲明,必須保留該代碼的較早部分。
- 或用于非GPL軟件(例如,閉源或App Store發行)的商業許可。您可以通過Super Source獲得許可證。如有任何疑問,請發送電子郵件至kornel@pngquant.org。