@SoNiceInfo 發布於 2026年9月22日
在 Mac 上把 PNG、JPG、HEIC 圖片批次轉換成 AVIF,最簡單的方法是使用 AVIF Converter. 這類 GUI App: 拖放圖片或資料夾,比較轉換前後後再輸出,圖片完全不會離開你的 Mac。 如果你平常就在終端機裡工作,透過 Homebrew 安裝的指令列編碼器 avifenc(libavif)也能完成同樣的工作;較新版本的 macOS 也可以用內建的 sips 指令轉換,只是 sips 幾乎無法控制品質。 這 3 種方法都完全在 Mac 上執行,不會上傳到任何地方。
AVIF 是新一代的圖片格式,在畫質相近的情況下,檔案大小約為 JPEG 的一半,並支援透明、動畫、HDR 與 10/12 位元色彩深度。 本文會逐一說明每種方法,並列出我們用同一張原始圖片實際得到的檔案大小。
| 項目 | AVIF Converter. | avifenc(libavif) | sips(macOS 內建) |
|---|---|---|---|
| 批次轉換 | 拖放即可,整個資料夾也行 | 需要 shell 迴圈 | 可以,使用萬用字元 |
| 品質/速度的控制 | 在畫面上調整並比較轉換前後 | 可細部調整(-q、-s 等) | 幾乎無法控制 |
| GUI | 有 | 無(終端機) | 無(終端機) |
| 事前準備 | 從 Mac App Store 安裝 | Homebrew 加上 brew install libavif | 不需要(僅限能寫出 AVIF 的 macOS 版本) |
| 上傳圖片 | 不會 | 不會 | 不會 |
如果不想使用終端機,或想在輸出前親眼判斷畫質,GUI App 是最簡單的途徑。Mac 用的 AVIF 批次轉換 App「AVIF Converter.」可免費開始使用,所有轉換都在 Mac 上進行,圖片絕不會傳送到外部。
拖放
把 PNG、JPG、HEIC 或 WebP 檔案(或整個資料夾)拖放到視窗上。
選擇品質
App 會顯示轉換前後的檔案大小與壓縮率,也能用滑桿比較原圖與轉換結果。
按下「開始轉換」
一次寫出所有 AVIF 檔案。
它也支援調整大小、中繼資料選項、批次加上浮水印、JPEG/PNG 備援輸出,以及動畫 AVIF。 如果需要同時輸出多種格式(除了 AVIF,還有 WebP 和 JPEG XL),全方位的 Image Tool+ 會更適合。
macOS 12 以上 · 原生支援 Apple 晶片
avifenc 是 AVIF 參考實作 libavif 隨附的編碼器。它能精確控制品質與速度,也很容易整合到腳本和建置流程中。 裝好 Homebrew 後,一行指令就能完成安裝:
brew install libavif轉換單一圖片時,指定輸入與輸出的檔名:
avifenc -q 60 -s 6 input.jpg output.avif-q——品質,範圍 0~100。數值越高,畫質越好,檔案也越大。照片可以先從 60 左右開始試。-s——編碼速度,範圍 0~10。數值越低速度越慢,但檔案越小。6 在速度與檔案大小之間取得不錯的平衡。要轉換資料夾內所有的 JPG 和 PNG,可以使用 shell 迴圈。輸出的檔案會沿用原始檔名,只把副檔名改成 .avif。
for f in *.jpg *.png; do avifenc -q 60 -s 6 "$f" "${f%.*}.avif"; done請注意,avifenc 主要讀取 JPEG、PNG 與 Y4M。iPhone 拍的 HEIC 照片,請先用 sips 轉成 PNG,或改用能直接讀取 HEIC 的方法 1 或方法 3。
sips 是 macOS 內建的圖片處理指令。較新版本的 macOS 能寫出 AVIF,所以不必安裝任何東西就能轉換。 要確認你的 Mac 是否支援,請執行下面的指令。如果 avif 那一行顯示 Writable,就可以使用。
sips --formats | grep -i avif在我們的機器(macOS 27)上會顯示 public.avif avif Writable,用下面的指令就能轉換圖片:
sips -s format avif input.jpg --out output.avif要一次轉換多張圖片,把輸出位置指定為資料夾即可。HEIC 檔案也能以同樣的方式作為輸入。
mkdir avif && sips -s format avif *.jpg --out avif/缺點是 sips 幾乎無法控制 AVIF 的品質或編碼速度。從下面的數據可以看出,它的預設設定無法像 avifenc 那樣把檔案縮得那麼小,所以請把它當成只需要一個 AVIF 時的快速選項。
我們用每種指令列方法,把同一張 1600×1064 的 JPEG 照片(230 KB)轉換成 AVIF。 這只是一個例子,縮小的幅度會因圖片與設定而有很大差異。
| 方法 | 檔案大小 | 與原始 JPEG 相比 |
|---|---|---|
| 原始 JPEG | 230 KB | — |
avifenc -q 60 -s 6 | 108 KB | 約小 53% |
sips -s format avif(預設設定) | 182 KB | 約小 21% |
測試環境:macOS 27、avifenc 1.4.2(aom 3.15.0)。
能否調整品質,差別就是這麼大。如果在意檔案大小,請選擇可以自行設定品質的 avifenc,或是能在畫面上一邊比較轉換前後、一邊調整的 AVIF Converter.。
為了讓不支援 AVIF 的瀏覽器也能顯示圖片,網頁上的標準做法是使用 <picture> 元素,依 AVIF → WebP → JPEG 的順序做備援。 瀏覽器會載入清單中第一個它支援的格式。
<picture>
<source type="image/avif" srcset="/images/hero.avif" />
<source type="image/webp" srcset="/images/hero.webp" />
<img src="/images/hero.jpg" alt="..." width="1600" height="1064" />
</picture>瀏覽器支援情況:Chrome(2020 年起)、Firefox(2021 年起)、Safari(macOS 13/iOS 16 以上)、Edge(2024 年起)。 WebP 備援的做法請參考在 Mac 上批次將圖片轉換為 WebP 的方法,兩種格式如何選擇則請參考WebP 與 AVIF 的比較。
<picture> 的寫法。 如果想在建置或部署流程中完成轉換,avifenc 會更適合。所有主要瀏覽器都支援 AVIF:Chrome(2020 年起)、Firefox(2021 年起)、Safari(macOS 13/iOS 16 以上)、Edge(2024 年起)。 只要使用 <picture> 元素,把 AVIF 放在最前面,並以 WebP 或 JPEG 作為備援,舊版的用戶端也能正常顯示圖片。
AVIF 通常作為有損格式使用,品質設定越低,捨棄的細節就越多。不過在相同的檔案大小下,AVIF 看起來比 JPEG 更好;以照片來說,品質 60 左右就很難和原圖分辨出差異。 最可靠的做法,是用你自己的圖片比較轉換前後,選出你能接受的最低品質。
最重視檔案大小時選 AVIF;比較在意舊版用戶端的相容性或編碼速度時選 WebP。 在網站上,常見的做法是兩種都提供,再交給 <picture> 元素做備援。 詳情請參考WebP 與 AVIF 的比較。
可以。macOS 13 以後原生支援顯示 AVIF,所以可以用「快速查看」和預覽程式打開。 更早版本的 macOS 預設無法顯示 AVIF。
如果只是少數幾張已經公開的圖片,並沒有問題。但線上轉換工具的運作方式是把你的圖片傳送到別人的伺服器,不適合用在尚未公開的素材、客戶委託的作品或帶有位置資訊的照片。 本文介紹的 3 種方法,都能在不把圖片傳出 Mac 的情況下完成轉換。
要在 Mac 上批次將圖片轉換成 AVIF,建議先從 GUI App AVIF Converter. 開始:拖放、比較轉換前後,然後輸出。 如果你在終端機裡工作,就用 avifenc;不想安裝任何東西,就用 sips。無論哪一種,圖片都不會離開你的 Mac。