三種格式,一個問題:誰能給你最小的檔案,畫面還好看、還到處都能開啟?就純壓縮率而言,老實的排名是 AVIF > WebP > JPEG。但"最小"並不是唯一重要的事,而且 AVIF 有一個實用層面的坑,大多數對比文章都跳過了。我們來把它講清楚。

快速對比

AVIF、WebP、JPEG 對比——你該用哪一個? — visual 1
快速對比
JPEG WebP AVIF
釋出年份 1992 2010 2019
壓縮 基準 比 JPEG 小約 25–35% 比 JPEG 小約 50%
透明(alpha) 不支援 支援 支援
動畫 不支援 支援 支援
色深 8 位 8 位 最高 12 位、HDR
瀏覽器支援 全面 全面 很好,略微落後
編碼速度

紙面上,AVIF 幾乎每一行都贏。它壓得最狠,支援透明和 HDR,在很小的檔案體積下依然乾淨。WebP 穩穩坐在中間——比 JPEG 小、全面支援、沒有么蛾子。JPEG 是老可靠:它不能做透明或動畫,但地球上每一臺裝置、每一個軟體、每一個郵件客戶端都認它。

沒人提的 AVIF 之坑

AVIF、WebP、JPEG 對比——你該用哪一個? — visual 2
沒人提的 AVIF 之坑

這是你在圍繞 AVIF 做規劃前必須知道的部分。瀏覽器能解碼 AVIF,卻無法可靠地從 canvas 編碼它。 網頁內建的圖片匯出路徑(canvas.toBlob)根本無法以穩定、跨瀏覽器的方式產出 AVIF。要把 AVIF 編碼好,需要大量計算,而瀏覽器的 canvas API 並不提供這種能力。

這在實踐中意味著:一個純瀏覽器端的工具能顯示 AVIF,卻無法可靠地生成它。所以當你在瀏覽器端轉換工具裡把 AVIF 選為匯出目標時,明智的做法就是回退到 WebP——這裡正是這麼處理的。你依然得到一個現代、壓縮良好的檔案(比 JPEG 或 PNG 小),到處都能開啟,也不會得到一個訪客可能打不開的格式。這是一筆老實的交易:你損失了 AVIF 最後那一點壓縮優勢,換來全面相容和即時轉換。

如果你確實需要真正的 AVIF 檔案,那就得用伺服器端編碼器或原生桌面工具。對絕大多數網頁用途來說,WebP 讓你拿到 90% 的好處,卻沒有任何編碼上的頭疼。

那你到底該選哪個?

  • 在網站上發照片、想要最小又可靠的檔案? 選 WebP。全面支援,比 JPEG 省很多,今天就能用瀏覽器工具搞定。
  • 需要極致壓縮、又能掌控整條流水線(伺服器端)? 選 AVIF——在伺服器端編碼,而不是在瀏覽器裡。
  • 發郵件、列印,或餵給較老的軟體? 選 JPEG。無聊,但永遠好使。
  • 需要透明? WebP 或 AVIF——絕不用 JPEG。

在瀏覽器裡轉換

圖片格式轉換工具完全在你的裝置上用 Canvas 執行。什麼都不上傳、無需註冊,首次訪問後離線也能用。可以在 PNG、JPG、WebP 之間批次轉換。如果你選了 AVIF,出於上面的原因它會透明地回退到 WebP——無論如何你都會得到一個小巧、到處都能讀的檔案。

一句話總結

對絕大多數釋出到網頁的人來說,WebP 是甜點位:比 JPEG 小得多、支援透明,而且到處都能用,包括在瀏覽器工具裡。AVIF 在技術上是壓縮冠軍,但真正的 AVIF 編碼屬於伺服器,而非你的瀏覽器。JPEG 則始終是那個後備格式——只要"最大相容"勝過"最高效率",你就回到它。