圖片無損壓縮:如何縮小檔案而不損失畫質

無損最佳化可以在保留圖片資訊的同時,讓既有圖片檔案更精簡。本指南會說明它與高畫質有損壓縮的差異,提供本機處理 PNG 與 JPG 的範例,並協助您依保留像素或日常分享的需求選擇流程。
了解壓縮類型

無損壓縮
無損編碼可以完整重建傳入編碼器的像素。PNG 與部分其他格式的無損模式具備這項能力,但這不保證轉換也會保留來源中繼資料、色彩深度,或編碼前所做的編輯結果。
有損壓縮
有損編碼會捨棄部分圖片資訊,以換取較小的檔案。JPG 即使使用最高畫質設定,仍採用這種方式。
視覺無損
這是指在特定檢視條件下,肉眼無法看出差異的有損壓縮結果。它是對該次結果的判斷,不是某個預設設定附帶的保證。
保留畫質的方法
中繼資料與色彩
移除非必要的 EXIF 欄位或縮圖,可以在不改變已儲存像素的情況下縮小檔案。能節省多少空間,取決於檔案原本包含哪些資訊。色彩描述檔與方向資訊會影響圖片的解讀方式,因此請勿任意移除,並保留原始副本。
色盤與位元深度
移除未使用的色盤項目可以是無損操作。但減少色彩數量或降低位元深度可能改變像素,不能一概稱為無損。
PNG 編碼
改變 PNG 壓縮所投入的運算量,可以改變編碼時間與檔案大小,而不改變傳入 PNG 編碼器的像素。這與調整尺寸或進行色彩量化不同。
如何進行壓縮
在本機最佳化靜態 PNG
請先安裝 OptiPNG。在圖片資料夾中開啟終端機,替換輸入檔名,並選擇新的輸出檔名:
optipng -nx -out "optimized.png" "input.png"
-nx 選項會在 OptiPNG 最佳化 PNG 壓縮時,維持位元深度、色彩類型與色盤不變。此範例適用於靜態 PNG。請參閱選項說明。
在本機最佳化既有 JPG
安裝 jpegtran(由 libjpeg-turbo 提供)後,請執行:
jpegtran -copy all -optimize -outfile "optimized.jpg" "input.jpg"
這會最佳化 JPEG 編碼,而不再次進行有損重新編碼。-copy all 會保留額外的中繼資料標記;指定新的輸出路徑,則能讓來源檔留在原處。請參閱 jpegtran 說明文件。請使用尚未存在的輸出檔名,驗證後保留較小的檔案。這兩種方法都無法修復先前的圖片損傷。
壓縮副本供日常分享
如果縮小交付檔案比保留完全相同的像素更重要,請開啟圖片壓縮工具,上傳一張圖片,並先使用 均衡(建議)。比較下載結果後,再依需求選擇更強的壓縮或更高的畫質。
線上壓縮表單沒有獨立的「無損」開關。它的畫質預設設定可能改變細節或色彩,PNG/GIF 輸出也包含在內;若優先考量是保留既有圖片資訊,請使用上述本機方法。
各格式的使用建議
- JPG: 請從原始檔開始。高畫質可能減少可見的壓縮失真,但重新編碼仍是有損的。
- PNG: 請區分無損壓縮的運算量調整,以及縮減色盤、調整尺寸等編輯操作。結果不保證比較小。
- WebP: 這種格式有獨立的有損與無損模式。高畫質設定不等於啟用無損模式;請確認個別轉換工具的控制選項。
比較結果

移除中繼資料、最佳化 PNG 或選用具名畫質設定,都沒有固定的容量縮減幅度。結果取決於來源、尺寸與原有壓縮程度。插圖用來說明比較方式,並非實測的效能基準。
請記錄原始與輸出檔案大小,再檢查文字邊緣、漸層與細微紋理。只有符合視覺需求時,才保留較小的結果。
畫質格外重要時
若用於封存、專業主檔,或任何需要原始資訊的流程,請另外保留來源檔。視覺相近的匯出檔,不能取代原始中繼資料、色彩資訊或可編輯圖層。
交付時請使用壓縮副本,並確認使用端對格式、尺寸與色彩的要求。
避免畫質損失
每次匯出都應從原始檔或可編輯主檔開始。反覆進行有損重新編碼可能累積壓縮失真;單純複製檔案則不會。
只有使用端需要不同尺寸時,才調整尺寸。尺寸調整會改變像素,與壓縮畫質是不同的因素。請以預定顯示大小及完整解析度檢查最終圖片。
驗證
檢查圖片與中繼資料
請在同一個檢視器中,以 100% 縮放 開啟來源與輸出,檢查尺寸、方向、透明效果與細微細節。如需中繼資料,請另外檢查。
視覺比較適合檢查分享副本,但若要證明像素完全相同,必須使用相同的解碼器與設定,比較解碼後的像素。檔案雜湊值改變,本身不代表像素改變:最佳化編碼會改變檔案的位元組內容。
檢查檔案大小
請比較實際位元組數。如果最佳化後只節省一點空間,或完全沒有縮小,來源可能已採用有效率的編碼。若目標是無損最佳化,請保留原始檔,不要為了縮小檔案而降低尺寸或色彩數量。
批次處理
目前的壓縮表單每次提交只接受一張圖片。少量圖片可重複此流程;若要處理資料夾或大量檔案,請使用明確支援批次處理的外部軟體。
即使使用同一個設定,不同圖片仍可能產生不同的大小與可見壓縮失真。廣泛套用設定前,請先測試具代表性的照片、文字與圖像,並逐一檢查輸出。
常見錯誤
過度壓縮
問題: 出現可見的壓縮失真
解決方式: 使用較高的畫質設定
格式不適合
問題: 壓縮效率不佳
解決方式: 依內容類型選擇格式
多次壓縮
問題: 畫質損失持續累積
解決方式: 每次都從原始檔進行壓縮
實用建議
- 保留原始檔,另外建立交付用副本。
- 選擇壓縮方式前,先決定所需尺寸。
- 日常分享可從 均衡(建議) 開始;若細節受損,請嘗試較高的畫質設定。
- 比較輸出後,記錄所選設定與實際檔案大小。
封存時,保留原始檔比選擇名稱為「最高畫質」的設定更重要。列印時,也請確認解析度、色彩與印刷業者的要求。
常見問題
高畫質代表無損嗎?
不代表。它是畫質預設設定,不是無損模式,也不是保留細節的百分比。
JPG 可以在不改變解碼後像素的情況下變小嗎?
專用工具可以移除中繼資料或最佳化 JPEG 編碼,而不進行有損重新編碼。目前 ImgConvert 的壓縮流程會重新編碼 JPG,因此不提供這項保證。
所有 PNG 操作都是無損的嗎?
PNG 編碼對輸入像素是無損的,但編碼前的尺寸調整、減色或轉換可能改變像素。
可以節省多少空間?
請測量輸出。預設設定或格式沒有固定的縮減幅度,已經最佳化的檔案也可能不會再縮小。
應該一律選擇無損嗎?
請依交付要求選擇。保留原始檔,並比較壓縮副本後再決定。
結語
若既有 PNG 或 JPG 必須保留圖片資訊,請先採用上述本機最佳化範例,並驗證結果。日常分享則可建立交付副本,選擇符合檔案大小與細節需求的畫質設定。
相關工具:圖片尺寸調整 | JPG 轉 WebP | JPG 轉 PNG