Oxipng
Rust 極速 PNG 壓縮工具
軟體分類 多媒體應用 / 圖像編輯
軟體標籤
KVM調查工具Automation tools2D Animation
開發廠商 shssoichiro
產品說明
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),用於縮減體積或隱私保護 |
| –alpha | Alpha 通道 | 對 Alpha 色版進行最佳化處理 (支援透明度檢查) |
| -i / –interlace | 交錯掃描 | 更改圖片的交錯模式 (0 或 1),通常用於網頁漸進式顯示 |
| -t / –threads | 執行緒數 | 手動指定使用的 CPU 核心數 (預設自動偵測) |
操作介面



