GIF 可能是網路文化裡最獨特的存在:一個誕生於 1987 年、技術上早已過時的圖片格式,卻在 21 世紀的社群媒體上找到了第二春,成為情緒表達、幽默傳播和文化迷因的主要媒介。了解 GIF 意味著同時了解它的技術結構和它的文化意義——這兩者缺一不可。
GIF 是「Graphics Interchange Format」(圖形交換格式)的縮寫。它由美國線上服務公司 CompuServe 的工程師 Steve Wilhite 於 1987 年設計,最初版本稱為 GIF87a。1989 年更新為 GIF89a,加入了動畫支援——這個版本就是今天我們所說的動態 GIF 的基礎。
GIF 的設計動機很實際:當時的撥接網路頻寬極為有限,需要一種能在低頻寬下傳輸圖形的格式。GIF 使用 LZW 無損壓縮演算法(後來因為這個演算法的專利問題引發了 PNG 的誕生),在當時的技術條件下表現出色。
GIF 每個畫面最多只能包含 256 種顏色,這個限制在 2024 年看來非常原始,但在 1987 年是合理的設計選擇。
GIF 使用的是索引色(indexed color)模式:每個像素不直接儲存 RGB 顏色值,而是儲存一個指向「調色盤」(palette)的索引數字。調色盤最多有 256 種顏色(2 的 8 次方),每種顏色是一個完整的 RGB 值。這種設計大幅減少了儲存空間——每個像素只需要 1 個位元組(8 bit),而不是 3 個位元組(24 bit RGB)。
256 色對圖示、簡單插圖、文字圖形來說完全夠用,但對照片就非常不夠——照片通常需要數百萬種顏色才能呈現自然的漸層和色調。這就是為什麼 GIF 照片看起來會有明顯的色帶(banding)效果。
對於動態 GIF,有一個取巧的方法:雖然每一幀只能有 256 色,但不同幀可以使用不同的調色盤。透過這個技巧,整個動畫可以使用的顏色總數遠超過 256,只是在每一個靜止畫面上仍然受限。
動態 GIF 的原理非常簡單:把多個靜態圖像(幀)依序儲存在同一個檔案裡,並指定每幀的顯示時間(以 1/100 秒為單位)和循環次數(0 = 無限循環)。播放器按照這個時序依次顯示每幀,就形成了動畫效果。
這個機制的特點:
GIF 的文化復興始於 2000 年代末到 2010 年代初,Tumblr、Reddit、Twitter 等社群平台的崛起讓 GIF 找到了完美的生態位。
GIF 作為文化媒介有幾個獨特的優勢:
Giphy、Tenor 等 GIF 資料庫的出現,以及各大平台(iMessage、WhatsApp、Twitter、Slack)的原生 GIF 鍵盤,讓 GIF 成為日常數位溝通的基礎設施。
技術上,GIF 已有多個更優秀的替代方案:
儘管技術上的替代方案更優秀,「GIF」這個詞作為文化概念已經深入人心——人們說「傳我一個 GIF」,即使實際傳送的可能是 MP4。
一個無法迴避的問題:GIF 到底是念 /gɪf/(硬 G,像「gift」去掉 t)還是 /dʒɪf/(軟 G,像花生醬品牌「Jif」)?GIF 的發明者 Steve Wilhite 在 2013 年的韋氏字典年度詞彙獎頒獎台上明確表示:「It’s pronounced JIF, not GIF.」但這個問題至今仍是網路上的熱門爭論,雙方各有堅定支持者,大概不會有最終定論。
如果這個檔案是機密的,最安全的做法是讓它根本不離開你的電腦。圖片格式轉換完全在瀏覽器裡執行:檔案從你的硬碟讀進記憶體、在本機處理、再寫回硬碟,不會送到任何伺服器。
在瀏覽器裡直接完成,檔案不會離開你的電腦:圖片格式轉換