歴史レッスン:.gif ファイルとは? CompuServe、LZW 特許、そして GIF89a
Graphics Interchange Format — 1987 年の CompuServe 製パレット画像、LZW 圧縮、GIF87a と GIF89a の違い、そして 2026 年になっても .gif ファイルがディスク上でループし続ける理由。

TL;DR
.gif は Graphics Interchange Format の画像で、低速なダイヤルアップ回線でもカラー画像をやり取りできるよう、CompuServe が 1987 年に公開したパレットベース(インデックスカラー)のラスターです。Steve Wilhite のチームが設計し、ファイルは ASCII のシグネチャ GIF87a または GIF89a で始まり、続いて Logical Screen Descriptor、任意の Global Color Table(最大 256 色の RGB パレット)、LZW(Lempel-Ziv-Welch)圧縮された画像データ、終端が並びます。任意のインターレースは走査線を順序を変えて格納し、ダウンロードが終わる前におおまかなプレビューを表示できるようにします。GIF89a(1990 年 7 月 31 日)では、Graphics Control Extension(透明度、破棄方法、フレームのディレイ)、Comment 拡張と Plain Text 拡張、そして後にベンダーがループ再生に使った Application Extension が追加されました。1990 年代半ばの Unisys による LZW 特許をめぐる争いは、PNG(Portable Network Graphics)や「Burn All GIFs」抗議運動を後押ししました。これらの特許はのちに失効しています(一般には米国で 2003 年 6 月、ほかの地域で 2004 年とされます)。Netscape Navigator 2.0 の NETSCAPE2.0 ループ拡張によって、アニメーション GIF は Web の習慣になりました。2026 年になっても、これらのレガシーファイルはミームのフォルダー、メールの署名、古いサイトのアーカイブに残っています。Legacy File Converter は、Windows 上でローカルに .gif 画像を JPG、PNG、PDF に変換します — アップロードは一切行われません。
.gif ファイルとは?
.gif ファイルは、Graphics Interchange Format で保存された画像です。考え方を平易に言うと、各ピクセルは通常、最大 256 色のカラーテーブル(パレット)へのインデックスであり、そのインデックスがロスレスの LZW(Lempel-Ziv-Welch)圧縮でまとめられます — エンコーダーが復元するのはパレットのインデックスそのもので、ぼやけた近似ではありません。ファイルは 6 バイトの ASCII、GIF87a または GIF89a で始まり、リーダーはどちらのリビジョンかを知ることができます。
CompuServe は 1987 年 6 月 15 日、オンラインサービスのファイルエリア向けに GIF を導入し、以前の白黒のランレングス方式を置き換えました。カラーの天気図、アイコン、スクリーンショットは、300〜2400 ボーのモデムでは生のビットマップより高密度な形式を必要としていました。仕様が公開されていたため、GIF は CompuServe の外へ広がり、BBS、初期の Web ページ、数えきれないデスクトップ編集ソフトに浸透しました。日常的な検索「.gif ファイルとは」は、たいていループするミーム、透明なロゴ、あるいは PNG にならなかった 1990 年代の Web サイトの素材を眺めている人から出てきます。
写真用コーデックではなくパレット形式
.gif は「アニメーション付きの JPEG」ではありません。テーブルあたり最大 256 色のインデックスカラー形式で、LZW 圧縮を使います — ベタ塗りのグラフィックスや短いループには向きますが、連続階調の写真には不向きです。
GIF87a と GIF89a の違いは?
GIF87a は 1987 年の最初のストリームで、論理スクリーン、カラーテーブル、イメージ記述子、LZW 画像データ、任意のインターレース、ファイル終端のトレーラーで構成されます。1 つのファイルに複数の画像を入れることはすでに可能でしたが、タイミング、透明度、ベンダー向けのフックは乏しいものでした。
GIF89a — 1990 年 7 月 31 日付の CompuServe のプログラミングリファレンスで、W3C のテキストコピーを含め広くミラーされています — は、その中核を保ったまま拡張ブロックを追加します。Graphics Control Extension(GCE)は、透明フラグと透明色のインデックス、破棄方法(前のフレームをどう扱うか)、ユーザー入力フラグ、100 分の 1 秒単位のディレイ時間を持ちます。Comment Extension は人間が読めるメモを保持します。Plain Text Extension(今ではほとんど使われません)は、グリッド上にテキストを描画できました。Application Extension は、ベンダーがアプリケーション固有のデータを格納できる仕組みで、のちに Netscape がループ再生のために通った扉です。
同じファミリー、より豊かな制御
GIF89a は LZW に取って代わったわけでも、256 色の上限を引き上げたわけでもありません。透明度とフレームのタイミングに必要な制御ブロックを追加しただけです。多くの「アニメーション GIF」は、複数の画像ブロックと GCE を持つ GIF89a のストリームです。
バイトの仕組み:シグネチャ、パレット、LZW、インターレース
6 バイトのシグネチャの後には Logical Screen Descriptor が続きます。キャンバスの幅と高さ、Global Color Table 用のパックされたフラグ、色解像度、背景色インデックスです。フラグが立っていれば Global Color Table が続き、ファイル全体で共有できる最大 256 個の RGB 三つ組を持ちます。個々のフレームは、代わりに(または加えて)Local Color Table を持つこともできます。ピクセルデータは生の RGB ではなく、LZW で圧縮されたパレットインデックスのストリームです。LZW は Terry Welch が記述した辞書式コーダーで、Unisys が米国特許 4,558,302 として特許を取得しました。
インターレースは、ダイヤルアップ時代に役立った段階表示の工夫です。走査線を 4 パスの順序で格納することで、ファイル全体が届く前に、粗くても見分けのつく画像が現れます — 遅いダウンロードを途中で中止することが重要だった時代には便利でした。GIF89a の GCE は、その上にタイミングと 1 ビットの透明度を重ねます。いずれも本当の 24 ビットカラーを生み出すわけではなく、上限は依然としてパレットのサイズです。
「256 色」を正確に言うと
「256 色」とは、その画像(またはフレーム)のカラーテーブルに最大 256 エントリあるという意味です — 256 階調のグレーだけという意味ではなく、一般的な JPEG のような無制限の写真的な色でもありません。
CompuServe、Wilhite、そして GIF が広まった理由
Steve Wilhite は、オハイオ州コロンバスの CompuServe でこの作業を率いました。当時の紹介記事や彼の後年のインタビューによると、サービス側はダウンロード用のコンパクトなカラーグラフィックスを必要としていました。彼は、頭の中にあった形式を目指してプログラミングしたこと、初期のテスト画像が飛行機だったことを振り返っています。CompuServe は仕様を単一のクライアントに閉じ込めず公開したため、BBS、Mac と PC のペイントソフト、そして Web ブラウザーのすべてが GIF リーダーを備えるようになりました。
LZW は、当時の多くのグラフィックスで単純なランレングス符号化を上回り、生のビットマップではモデムを詰まらせたであろうカラーの画面ダンプが共有可能になりました。インターレースと小さなシグネチャによって、この形式は不完全なネットワークにも優しいものになりました。1990 年代半ばには、GIF は初期の Web が実際に配信していた 2 種類の画像のひとつとして JPEG と並んでいました — 写真には JPEG、ロゴや箇条書きの記号、そして最終的にはループには GIF です。
Unisys の LZW 特許、「Burn All GIFs」、そして PNG
CompuServe は、必要な要素は自由に使えると信じて LZW を選びました。Unisys が特許を保有しており、1993 年ごろから始まった非公開の協議を経て、1994 年末に CompuServe とのライセンス契約が発表されました。開発者コミュニティは、GIF エンコーダーを配布するとロイヤリティが発生しうることを知りました。当時の報道には、CompuServe の驚きと Unisys の料金要求が記録されています。二次的な語り直しでは具体的なドル金額がまちまちなので、このレッスンでは価格表をでっち上げません。
反発は技術的であると同時に文化的でもありました。活動家たちは「Burn All GIFs」の抗議デーを組織しました。エンジニアたちは、静止画向けの特許に縛られない後継として PNG(Portable Network Graphics)を設計しました — より優れた圧縮オプション、トゥルーカラーとアルファを備えますが、中核の PNG 形式には GIF のような複数フレームのアニメーションはありません。ブラウザーの PNG 対応が追いつくには何年もかかり、GIF はそれでもミームとバナーという居場所を保ちました。Unisys はのち、米国の LZW 特許が 2003 年 6 月 20 日に失効し、ほかのいくつかの国の対応特許が 2004 年に失効したと述べています(一部の欧州の対応特許については 2004 年 6 月 18 日という日付がよく挙げられます)。これらの失効後、ライセンスをめぐる争いはこの形式から去りましたが、ディスク上のファイルは残りました。
特許の歴史であり、法的助言ではありません
上記の日付は、Unisys 自身の後年の要約と米国議会図書館の形式メモに従っています。管轄ごとに詳細は異なりました。「LZW 特許が失効した」は、ひとつの論争の歴史として受け取り、2026 年の製品判断のための助言とはしないでください。
アニメーション GIF と Netscape のループ拡張
GIF89a は、Graphics Control Extension によって、フレームごとのディレイを付けて複数の画像をすでに格納できます。1990 年の仕様が標準化しなかったのは、「これを永遠に再生する」ことでした。Netscape はこの空白を、NETSCAPE2.0 と識別される Application Extension で埋めました。ループ回数を設定する小さなブロックで、一般的な解釈では 0 が無限ループを意味します。対応は 1990 年代半ばの Netscape Navigator 2.0 で現れ、ほかのブラウザーにも広がりました。この非公式でありながらどこにでもある拡張こそが、短い動画タグが一般的になるずっと前に、音のないループクリップがミームの標準的な入れ物になった理由です。
コンバーターやアーキビストにとって重要な正確さについて。JPG と通常の 1 ページの PNG / PDF 出力は、静止画向けの出力先です。複数フレームの GIF をそれらの形式に再エンコードしても、タイムラインが魔法のように保たれるわけではありません — 残るのは、ブラウザーのループではなく静止画に適した画像データです。この記事は、フレーム抽出ツールやアニメーション出力が存在すると主張するものではなく、それぞれの入れ物が何のためのものかを述べているだけです。
柔らかい g か、硬い g か?発音をめぐる論争
CompuServe 自身のドキュメントには、こだわりのあるプログラマーは「jif」を選ぶ、というピーナッツバターのキャッチコピーをもじった冗談がありました。Steve Wilhite は柔らかい g を擁護し続けました。2013 年の Webby Awards で彼は Lifetime Achievement を受け取り、5 語のスライドを示しました。「jif」と発音するのであって、「gif」ではない、というものです。硬い g の話者は、Graphics は硬い g で始まると反論しました。辞書は両方を載せていることが多いです。この形式は、あなたがどう発音するかを気にしません。バイト列は今も GIF87a または GIF89a で始まります。
2026 年になっても .gif ファイルがディスクに残っている理由
2026 年になっても、.gif のレガシーファイルは、Slack のエクスポート、メールの署名、古いマーケティング用 ZIP、GeoCities 時代のミラー、ゲームの UI パック、ループとして保存されたスマートフォンのカメラの「ライブ」エクスポートなどに現れます。ストリームが普通であれば、ブラウザーやフォトで今も簡単に開けます。困りごとはほかにあります。アニメーションを拒否するアップローダー、静止画を想定するプリンター、整合性のために PNG や JPG を求めるアーカイブです。
Legacy File Converter は、サポートされているファイルの種類で対応画像のひとつとして Graphics Interchange Format / .gif を挙げており、Windows 上でローカルに .gif 画像を JPG、PNG、PDF に変換します — アップロードは一切行われません。この記事は歴史にとどまり、Application Extension を作るためのハウツーではありません。隣接する画像形式のレッスンは、歴史レッスン:.bmp ファイルとは?、歴史レッスン:.jfif ファイルとは?、歴史レッスン:.tga ファイルとは?、歴史レッスン:.avif ファイルとは? をご覧ください。
関連記事
古いファイルを開く準備はできましたか?
無料で始めて、買い切りの $79.95 Standard ライセンスで無制限変換を解除。Windows インストーラーをダウンロード — 最大 10 ファイルまで全機能。
無料トライアル
アプリの全機能 · 最大 10 ファイル
Windows 10 または 11
これまでどおりの無料トライアル — Windows インストーラーをダウンロードして、PC 上でローカルに変換できます。
直接 Windows インストーラー · オフライン MSI
安全ですか? — 発行元、インストーラー、SmartScreen のヘルプ
Windows 10 または 11 が必要です。サブスクリプションなし。100% Windows ネイティブ。