格式指南

PNG 與 WebP:該選哪一種

瀏覽器要顯示的圖片就用 WebP。母檔以及必須在任何地方都能開啟的檔案就保留 PNG。有意思的是 WebP 實際上小了多少,以及您為此付出什麼。

實際測得的差距

開發這個格式的 Google 公布了數字:無損 WebP 圖片比 PNG 小 26%,有損 WebP 圖片在相同畫質下比同等的 JPEG 小 25 到 34%。這些是測試集上的平均值,不是對您特定檔案的保證,但它們設定了正確的預期。

並列比較

PNG 與 WebP 比較
屬性 PNG WebP
壓縮模式 僅無損 無損與有損
一般無損檔案大小 基準 約小 26%
透明度 是,兩種模式都支援
透明度的成本 已包含 無損模式下約多出 22% 位元組
動畫 APNG,支援不一 是,廣泛支援
可在目前的瀏覽器開啟 到處都可以 到處都可以
可在舊軟體開啟 到處都可以 有時不行

大小與透明度的數字來自 Google 的 WebP 說明文件,其中也說明帶透明度的有損 WebP 通常比同等的 PNG 小三倍。

WebP 勝出的場合

  • 您自有網頁上的圖片 目前每一種瀏覽器都能顯示 WebP。圖片重量少四分之一,在行動網路上是實實在在的速度提升。
  • 帶照片內容的透明圖形 標誌疊在照片背景上時,帶 alpha 的有損 WebP 領先 PNG 最多。
  • 大張的螢幕截圖與介面擷圖 平面色塊與銳利文字在無損 WebP 中壓縮效果好,所以您保住精確的像素,甩掉檔案體積。
  • 任何以頻寬為瓶頸的場合 電子報、文件網站,以及圖片繁多的型錄。

PNG 仍然適用的場合

把 PNG 留作母檔。轉換一份交付用副本。這一條規則就涵蓋了以下大部分情況。

  1. 您會再次編輯的檔案 每經過有損格式來回一次,圖片就退化一點。無損母檔可以完全避開這個問題。
  2. 印刷與設計流程 許多排版與印前軟體仍然預期 PNG 或 TIFF。把 WebP 交給印刷廠,只會換來一封您不想收到的郵件。
  3. 舊系統要開啟的任何檔案 舊有的內部工具、較舊的文件檢視器,以及某些上傳表單會直接拒絕 WebP。
  4. 您要寄給別人的檔案 在較舊機器上的同事可能連按兩下都打不開。這正是WebP 轉 PNG 工具派上用場的原因。

無損還是有損 WebP

WebP 是兩種格式共用一個副檔名。無損模式精確保留每一個像素。有損模式會捨棄編碼器判斷您不會注意到的細節,檔案因此小很多。

標誌、圖表、螢幕截圖,以及任何有硬邊或文字的圖片,請選無損。照片以及沒有人會放大檢視的背景,請選有損。文字在有損設定下會在字母周圍出現柔和光暈,這是大家最先注意到的失真。

Vaultaire 轉檔工具兩種都提供。在無損模式下,它會把新檔案讀回來,除非輸出確實是像素相符的無損 VP8L 圖片,否則封鎖下載。alpha 值必須完全相符,對於部分透明的顏色,每個預乘的 8 位元通道最多可差 2,因為瀏覽器原生編碼器會捨入這些值。

轉檔對中繼資料的影響

轉檔也是丟掉檔案附帶內容的一種方式。轉檔工具不會把來源的 EXIF、ICC、文字、時間或 C2PA 記錄複製到新的 WebP,接著會用獨立的解析器掃描完成的檔案,只要出現任何記錄,下載就維持鎖定。

當 PNG 來自手機螢幕截圖、相機匯出或圖片產生器時,這一點很重要。若您想在決定前先看看附帶了什麼,中繼資料檢視工具會把它們列出來。全部在瀏覽器 worker 中執行,檔案絕不上傳。

轉檔工具的實際限制:一張靜態 PNG、上限 20 MB、任一邊 4,096 像素,總像素 16,000,000。動態 PNG 會在解碼前被拒絕,而不是默默匯出成第一個影格。

PNG 與 WebP 常見問題

WebP 比 PNG 好嗎?

用於網頁顯示的圖片,通常是。Google 測得無損 WebP 比 PNG 小 26%。當工具、印刷廠或同事需要那個數十年來人人都支援的格式時,PNG 仍然比較好。

WebP 支援透明度嗎?

兩種模式都支援。Google 指出無損 WebP 的 alpha 約多出 22% 位元組,並說帶透明度的有損 WebP 通常比同等的 PNG 小三倍。

把 PNG 轉成 WebP 會損失畫質嗎?

無損模式不會,它保留每一個像素。有損模式會刻意改變像素。轉檔工具會把完成的檔案讀回來,除非無損轉換產生了真正的無損 VP8L 圖片,否則封鎖下載。

什麼時候該保留 PNG?

要再編輯的母檔、預期 PNG 的印刷與設計軟體、舊系統必須開啟的檔案,以及存檔的螢幕截圖。請轉換一份交付用副本,而不是取代原始檔。

WebP 對 SEO 不好嗎?

不會。圖片越小載入越快,而網頁速度會影響排名。請提供訪客瀏覽器接受的格式,並維持原有的替代文字與檔案命名。

我之後可以轉回 PNG 嗎?

可以,而且 PNG 編碼從算繪後的像素起算是無損的。它無法還原先前的有損處理,所以由有損 WebP 轉回的 PNG 是一個裝著已退化像素的大檔案。