何時以及為何要將 GIF 轉換為 APNG
GIF和APNG都是動圖格式,但技術底層的差異很大。GIF(Graphics Interchange Format)於1987年誕生,使用LZW壓縮,僅支援256色調色板和二值透明——像素要麼完全透明要麼完全不透明。APNG(Animated Portable Network Graphics)在2008年左右開始獲得瀏覽器支援,它擴展了PNG格式以支援動畫,提供24位RGB色彩(1670萬色)和8位alpha通道(每像素256級透明度)。
轉換時發生了什麼
將GIF轉換為APNG會保留動畫的幀序列、播放時序和循環設定,同時升級編碼方式。每一幀從GIF的索引色板重新編碼為真彩色RGBA像素。PNG的deflate壓縮在大面積純色區域通常比GIF的LZW壓縮更高效——這意味著許多GIF,尤其是背景為大塊純色的動圖,轉換後APNG檔案反而更小。
APNG有明顯優勢的場景
- UI動畫和圖示——投影、發光效果和透明區域的抗鋸齒邊緣在APNG中平滑自然;GIF則顯示粗糙的鋸齒邊緣
- 貼紙和表情——支援APNG的平台(Telegram、LINE等)可以呈現邊緣清晰的透明貼紙
- 遊戲素材——帶有平滑alpha邊緣的精靈圖可直接導入遊戲引擎
- 漸變和攝影類內容——24位色彩深度消除了GIF將漸變量化到256色時出現的色帶
瀏覽器兼容性
APNG在Chrome(59+)、Firefox(3+)、Safari(8+)、Edge(12+)及大多數Chromium內核瀏覽器中得到支援。Internet Explorer不支援APNG。對於要求GIF格式的平台(如Twitter/X、Discord、Slack),可使用APNG轉GIF轉換器生成兼容版本。
