[12] [DFN[[[GIF]]]] は、[[Web]] の[[画像形式]]の1つです。

[3] 古い[[画像形式]]ですが、[[アニメーションGIF]]を中心に未だに使われ続けています。

* 代替

[36] 一般的には [[PNG]] を使うのがより好ましいと考えられています。

[37] [[アニメーションGIF]]の代替には [[APNG]] があります。

* 仕様書

[REFS[
- [16] [CITE[G I F (tm) Graphics Interchange Format (tm) A standard defining a mechanism for the storage and transmission of raster-based graphics information]] ([TIME[1995-01-17 22:19:33 +09:00]] 版) <http://www.w3.org/Graphics/GIF/spec-gif87.txt>
- [4] [CITE[ GRAPHICS INTERCHANGE FORMAT(sm)                                    Version 89a]] ([TIME[1995-01-18 07:26:07 +09:00]] 版) <http://www.w3.org/Graphics/GIF/spec-gif89a.txt>
]REFS]

* 呼称

[35] 
[DFN[ジフ]]と呼ぶ人と[DFN[ギフ]]と呼ぶ人がおり、[[ジフ]]が優勢なようです。
[[ギフ]]派もそれなりの勢力があり、たまに読み方論争となります。

[45] ジフでもギフでも好きなように読めばいいのです。

[REFS[
- [9] [CITE[GIF形式の開発者が、GIFの読み方は「ジフ」と断言。長年の論争に終止符]]
( ([TIME[2013-05-23 00:58:36 +09:00]] 版))
<http://hayabusa3.2ch.net/test/read.cgi/news/1369208081/>
]REFS]

* GIF の版

[13] [[GIF]] には [DFN[[[GIF87a]]]] [SRC[>>16]] と [DFN[[[GIF89a]]]] [SRC[>>4]]
があります。両者は[[画像]]データのヘッダー部分で区別されます [SRC[>>4]]。

[14] この他[[アニメーションGIF]]もあります。

;; [21] [[インターレースGIF]]、[[透過GIF]]、[[無圧縮GIF]]は [[GIF]] の機能を利用した状態を指していて、
[[GIF]] の版ではありません。

** GIF87

[17] [[GIF87a]] の元になった [DFN[[[GIF87]]]] なる仕様が存在するとの説明も散見されますが、
その根拠は見つかりません。 >>16 のように [[GIF87]] という[[ファイル名]]でも、
規定されている内容は [[GIF87a]]
です。また、 [[GIF87a]]、[[GIF89a]] のどちらの[[仕様書]]も、 [[GIF87a]]
より前の版の存在には言及していません
(GIF89a は GIF87a に言及しています)。 [[Wikipedia]] (>>15) にも、 [[GIF87a]] より前の [[GIF87]]
にはまったく言及せず、 [[GIF87a]] と [[GIF89a]] の2つの版があるとしているのみです。

[19] >>18 は、2004年の時点でも、 [[GIF87]] なるものの存在は確認できないとしています。また、
[[GIF87]] への言及が日本語のサイトばかりであることを指摘しています。現在でも、多少は[[英語]]で [[GIF87a]]
とは異なる [[GIF87]] に言及するサイトが存在してはいますが、ほとんどは日本語のサイトです。 [TIME[2014-04-12T14:26:56.100Z]]

[REFS[
- [18] [CITE@ja[フリーのGIF素材がDLでサイトを教えてください。ほしい画像は以.. - 人力検索はてな]] ([TIME[2014-04-12 14:25:39 +09:00]] 版) <http://q.hatena.ne.jp/1090517043#a127930>
]REFS]

[20] >>18 が指摘する通り、 [[CompuServ]] 内部のみでごく一時期 (1987年6月に GIF87a が発行される前の高々数ヶ月間)
に [[GIF87]] が存在した可能性はありますが、少なくても [[Web]] の[[画像形式]]としては、 GIF87
は存在しない可能性が高いと結論付けざるを得ません。

* 応用データ

[23] [[GIF]] に[[応用データ]]を埋め込むことで拡張がなされており、[[アニメーションGIF]]もその一つです。

[24] 既知の拡張のリストは >>22 にあります。

* 分類

[34] [[GIF]] 画像の特徴により、次のように分類されます。

[FIG(short list)[ [38] [[GIF]] の分類
- [[透過GIF]]
- [[アニメーションGIF]]
- [CODE[spacer.gif]]
]FIG]

* MIME 型

[32] [[MIME型]]は、 [DFN[[CODE(MIME)@en[image/gif]]]] です。

* 拡張子

[33] [[拡張子]]は [DFN[[CODE[.gif]]]] とするのが一般的です。

* 特許問題と相互運用性

[26] [[GIF]] で用いられる [[LZW]] 符号化の[[特許]]の問題により、
[[90年代]]末から
[[00年代]]にかけて
[[GIF]] は利用するべきではないとされ、代替となる[[画像形式]]として [[PNG]]
が広く用いられるようになりました。
[SEE[ [[LZW]] ]]

[27] しかし [[Webブラウザー]]から [[GIF]] 対応が削除されなかったこと、
[[IE]] や[[ガラケー]]など一部の [[Webブラウザー]]の [[PNG]] 対応が十分ではなかったこと、
[[アニメーションGIF]]の代替となる[[画像形式]]が普及に至らなかったことなどから、
結局 [[GIF]] も広く使われ続けました。特に [[PNG]] への対応が不十分な
[[Webブラウザー]]の対策から、
[[2010年代]]に入ってもなお [[GIF]] 
が好ましいとされることがありました。

[28] 現在では [[GIF]] に関わる[[特許]]は失効し、再び [[GIF]]
を実装する[[ソフトウェア]]が増えています [SRC[>>25]]。

* Web における GIF

[39] [[GIF]] は [[Web]] の標準の[[画像形式]]として、初期から現在まで非常によく用いられています。

[29] [[GIF]] に対応しない実装は、[[Web互換]]ではありません。

[40] 特許問題由来の [[PNG]] への置き換え運動も、 [[GIF]] を [[Web]]
から除去するには至りませんでした。
といっても流石に現在となっては機能不足が否めず、
新しい [[Webサイト]]の作成などにはほとんど用いられなくなっています。

[41] [CODE[img]] その他[[画像]]を扱える場所で使うことができます。

[43] [[視覚的][視覚的利用者エージェント]]かつ[[対話的][対話的利用者エージェント]]な
[[Webブラウザー]]は、
[[Web互換性]]のため、
[[アニメーションGIF]]の[[レンダリング]]にも対応する必要があります。
[SEE[ [[アニメーションGIF]] ]]

[42] [CODE[toDataURL]] で [[GIF]] を生成することは出来ません。

[44] その他 [[GIF]] 画像ファイルを直接操作する [[API]] は提供されていません。

* メモ

[25] [CITE@ja[Graphics Interchange Format - Wikipedia]] ([TIME[2014-10-12 17:47:23 +09:00]] 版) <http://ja.wikipedia.org/wiki/Graphics_Interchange_Format>

[1] [CITE@ja[携帯サイト開発者の裏メモ デコメ ファイル制限 GIF 再配布不可]] ([[mbnk]] 著, [TIME[2009-02-01 23:26:44 +09:00]] 版) <http://mbnk.blog120.fc2.com/blog-entry-64.html>

>デコメなどでは「GIF89a形式」を利用します。
>
「GIF87a形式」では、ファイル制限(再配布不可状態)になりメールに添付出来ません。

[2] [CITE[WentWayUp - JavaScript GIF Decoder]]
( ([TIME[2007-05-13 10:24:49 +09:00]] 版))
<http://www.nexyzbb.ne.jp/~ikadzuchi/wwu/digital/soft/GifDec.html>

[5] ( ([TIME[1995-01-18 07:26:07 +09:00]] 版))
<http://www.w3.org/Graphics/GIF/spec-gif89a.txt>

[6] [CITE[GIF Application Extension: NETSCAPE2.0]]
( ([TIME[2004-10-01 22:15:50 +09:00]] 版))
<http://odur.let.rug.nl/~kleiweg/gif/netscape.html>

[7] [CITE[IRC logs: freenode / #whatwg / 20121005]]
( ([TIME[2012-10-08 21:33:56 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20121005#l-737>

[8] [CITE@en[GifWriter.js 0.1.0 Released - Hidamari socket never dies]]
( ([TIME[2013-04-22 09:06:40 +09:00]] 版))
<http://en-vividcode.hatenablog.com/entry/release-notes/GifWriter.js-0.1.0>


[10] [CITE[IRC logs: freenode / #whatwg / 20130607]]
( ([TIME[2013-06-09 21:59:13 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20130607#l-106>

[11] [CITE[ncsa-mosaic/CHANGES at master · alandipert/ncsa-mosaic]]
( ([TIME[2014-04-07 05:29:20 +09:00]] 版))
<https://github.com/alandipert/ncsa-mosaic/blob/master/CHANGES#L191>

[15] [CITE@en[Graphics Interchange Format - Wikipedia, the free encyclopedia]]
( ([TIME[2014-04-10 20:34:52 +09:00]] 版))
<http://en.wikipedia.org/wiki/Graphics_Interchange_Format>

[22] [CITE@en[GIF - WHATWG Wiki]]
( ([TIME[2013-12-18 19:42:37 +09:00]] 版))
<http://wiki.whatwg.org/wiki/GIF>

[FIG(quote)[
[FIGCAPTION[
[30] [CITE[Welcome to Netscape Navigator Version 2.0]]
([TIME[2015-01-24 23:10:20 +09:00]] 版)
<http://web.archive.org/web/20030202175634/http://wp.netscape.com/eng/mozilla/2.0/relnotes/windows-2.0.html>
]FIGCAPTION]

> Netscape now conforms to GIF standards: Some GIF creation utilities produce GIF images that do not conform to standards. Such images will display empty outlines in place of the image. These outlines are much larger than the actual images. The images will not be visible at all.
> To repair these GIF images, content providers can read the offending GIF image into a different GIF utility that conforms to the GIF89a specifications, and save the image again.

]FIG]


[FIG(quote)[
[FIGCAPTION[
[31] [CITE@en[RFC 3709 - Internet X.509 Public Key Infrastructure: Logotypes in X.509 Certificates]]
([TIME[2015-04-05 18:07:12 +09:00]] 版)
<https://tools.ietf.org/html/rfc3709#page-10>
]FIGCAPTION]

> Implementations MUST support both the JPEG and GIF
>    image formats (with MIME types of "image/jpeg" and "image/gif"
>    '''['''MEDIA''']''', respectively).

]FIG]

[46] [CITE[W3C Journal]], [TIME[2024-09-11T13:55:48.000Z]], [TIME[1999-04-21T10:59:31.880Z]] <https://web.archive.org/web/19990421105305/http://www.w3journal.com/5/s3.koman.html>
