Skip to content

Oxipng

Rust 極速 PNG 壓縮工具

軟體分類 多媒體應用 / 圖像編輯
軟體標籤
KVM調查工具Automation tools2D Animation
開發廠商 shssoichiro
Stars
3.8k
Forks
152
License
MIT LICENSE
Version
v10.0.0
Update
2026-03-11
OS

產品說明

Oxipng 是一款以 Rust 語言重新編寫的 PNG 無損壓縮工具,其目標是成為經典工具 OptiPNG 的現代化、高效能替代品。在網頁最佳化與 App 開發的過程中,PNG 圖片的體積往往佔據了大量頻寬,而 Oxipng 能夠在「不犧牲任何畫質」的前提下,透過更先進的演算法將檔案大小壓縮到極致。

與傳統工具(如 OptiPNG 或 PNGCrush)相比,Oxipng 最大的優勢在於**多執行緒(Multithreading)**的支援。它能充分利用現代多核心 CPU 的算力,大幅縮短壓縮大量圖片所需的時間。此外,得益於 Rust 語言的特性,它在記憶體安全性與執行穩定度上也有著卓越的表現。

核心特色:

  • 極速壓縮:原生支援多執行緒運算,壓縮速度遠快於單執行緒的 OptiPNG。
  • 完全無損:僅針對檔案結構與編碼進行最佳化,保證解壓縮後的圖片像素與原圖 100% 一致。
  • 安全移除元數據:可選擇性地移除 EXIF、iTXt 等非必要資訊,進一步縮減體積並保護隱私。
  • 相容性高:指令介面設計刻意模仿 OptiPNG,讓老用戶可以無痛遷移,甚至直接整合進現有的 CI/CD 流程中。

常用指令

Oxipng 是純命令列工具,設計上非常直覺。它預設會盡可能在不影響畫質的情況下壓榨出每一 bit 的空間。以下是開發者最常用的指令範例:

基礎操作與範例

# 範例 1:基本壓縮 (預設 Level 2)
# 直接對 image.png 進行壓縮,並覆蓋原檔
oxipng image.png

# 範例 2:最高壓縮率 (Level 6, 較慢)
# 適合發布產品前的最終處理,盡可能壓到最小
oxipng -o 6 image.png

# 範例 3:遞迴壓縮整個目錄
# 掃描 current_dir 及其子目錄下的所有 PNG 檔並進行壓縮
oxipng -r current_dir/
# 範例 4:安全移除元數據 (Strip Metadata)
# 移除所有非必要的元數據 (如相機資訊、GPS),但在有色彩設定檔 (ICC profile) 時保留它
oxipng --strip safe image.png

# 範例 5:保留原檔並輸出到新位置
# 不覆蓋原檔,將壓縮後的圖片存到 optimized/ 資料夾
oxipng --out optimized/ image.png
參數/指令功能說明對應操作
-o / –opt壓縮等級設定優化等級 (0-6),預設為 2,數值越高越小但越慢
-r / –recursive遞迴搜尋同時處理指定資料夾及其子資料夾內的所有 PNG 檔
–strip移除資訊移除 metadata (選項: safe, all),用於縮減體積或隱私保護
–alphaAlpha 通道對 Alpha 色版進行最佳化處理 (支援透明度檢查)
-i / –interlace交錯掃描更改圖片的交錯模式 (0 或 1),通常用於網頁漸進式顯示
-t / –threads執行緒數手動指定使用的 CPU 核心數 (預設自動偵測)

操作介面