GIF

GIF (画像形式)

[12] GIF は、Web画像形式の1つです。

[3] 古い画像形式ですが、アニメーションGIFを中心に未だに使われ続けています。

代替

[36] 一般的には PNG を使うのがより好ましいと考えられています。

[37] アニメーションGIFの代替には APNG があります。

仕様書

呼称

[35] ジフと呼ぶ人とギフと呼ぶ人がおり、ジフが優勢なようです。 ギフ派もそれなりの勢力があり、たまに読み方論争となります。

GIF の版

[13] GIF には GIF87a >>16GIF89a >>4 があります。両者は画像データのヘッダー部分で区別されます >>4

[14] この他アニメーションGIFもあります。

[21] インターレースGIF透過GIF無圧縮GIFGIF の機能を利用した状態を指していて、 GIF の版ではありません。

GIF87

[17] GIF87a の元になった GIF87 なる仕様が存在するとの説明も散見されますが、 その根拠は見つかりません。 >>16 のように GIF87 というファイル名でも、 規定されている内容は GIF87a です。また、 GIF87aGIF89a のどちらの仕様書も、 GIF87a より前の版の存在には言及していません (GIF89a は GIF87a に言及しています)。 Wikipedia (>>15) にも、 GIF87a より前の GIF87 にはまったく言及せず、 GIF87aGIF89a の2つの版があるとしているのみです。

[19] >>18 は、2004年の時点でも、 GIF87 なるものの存在は確認できないとしています。また、 GIF87 への言及が日本語のサイトばかりであることを指摘しています。現在でも、多少は英語GIF87a とは異なる GIF87 に言及するサイトが存在してはいますが、ほとんどは日本語のサイトです。

[20] >>18 が指摘する通り、 CompuServ 内部のみでごく一時期 (1987年6月に GIF87a が発行される前の高々数ヶ月間) に GIF87 が存在した可能性はありますが、少なくても Web画像形式としては、 GIF87 は存在しない可能性が高いと結論付けざるを得ません。

応用データ

[23] GIF応用データを埋め込むことで拡張がなされており、アニメーションGIFもその一つです。

[24] 既知の拡張のリストは >>22 にあります。

分類

[34] GIF 画像の特徴により、次のように分類されます。

[38] GIF の分類

MIME 型

[32] MIME型は、 image/gif です。

拡張子

[33] 拡張子.gif とするのが一般的です。

特許問題と相互運用性

[26] GIF で用いられる LZW 符号化の特許の問題により、90年代末から00年代にかけて GIF は利用するべきではないとされ、代替となる画像形式として PNG が広く用いられるようになりました。 LZW

[27] しかし Webブラウザーから GIF 対応が削除されなかったこと、 IEガラケーなど一部の WebブラウザーPNG 対応が十分ではなかったこと、 アニメーションGIFの代替となる画像形式が普及に至らなかったことなどから、 結局 GIF も広く使われ続けました。特に PNG への対応が不十分な Webブラウザーの対策から、2010年代に入ってもなお GIF が好ましいとされることがありました。

[28] 現在では GIF に関わる特許は失効し、再び GIF を実装するソフトウェアが増えています >>25

Web における GIF

[39] GIFWeb の標準の画像形式として、初期から現在まで非常によく用いられています。

[29] GIF に対応しない実装は、Web互換ではありません。

[40] 特許問題由来の PNG への置き換え運動も、 GIFWeb から除去するには至りませんでした。 といっても流石に現在となっては機能不足が否めず、 新しい Webサイトの作成などにはほとんど用いられなくなっています。

[41] img その他画像を扱える場所で使うことができます。

[43] 視覚的かつ対話的Webブラウザーは、 Web互換性のため、 アニメーションGIFレンダリングにも対応する必要があります。 アニメーションGIF

[42] toDataURLGIF を生成することは出来ません。

[44] その他 GIF 画像ファイルを直接操作する API は提供されていません。

メモ

[25] Graphics Interchange Format - Wikipedia ( 版) http://ja.wikipedia.org/wiki/Graphics_Interchange_Format

[1] 携帯サイト開発者の裏メモ デコメ ファイル制限 GIF 再配布不可 (mbnk 著, 版) http://mbnk.blog120.fc2.com/blog-entry-64.html

デコメなどでは「GIF89a形式」を利用します。

「GIF87a形式」では、ファイル制限(再配布不可状態)になりメールに添付出来ません。

[2] WentWayUp - JavaScript GIF Decoder ( ( 版)) http://www.nexyzbb.ne.jp/~ikadzuchi/wwu/digital/soft/GifDec.html

[5] ( ( 版)) http://www.w3.org/Graphics/GIF/spec-gif89a.txt

[6] GIF Application Extension: NETSCAPE2.0 ( ( 版)) http://odur.let.rug.nl/~kleiweg/gif/netscape.html

[7] IRC logs: freenode / #whatwg / 20121005 ( ( 版)) http://krijnhoetmer.nl/irc-logs/whatwg/20121005#l-737

[8] GifWriter.js 0.1.0 Released - Hidamari socket never dies ( ( 版)) http://en-vividcode.hatenablog.com/entry/release-notes/GifWriter.js-0.1.0

[10] IRC logs: freenode / #whatwg / 20130607 ( ( 版)) http://krijnhoetmer.nl/irc-logs/whatwg/20130607#l-106

[11] ncsa-mosaic/CHANGES at master · alandipert/ncsa-mosaic ( ( 版)) https://github.com/alandipert/ncsa-mosaic/blob/master/CHANGES#L191

[15] Graphics Interchange Format - Wikipedia, the free encyclopedia ( ( 版)) http://en.wikipedia.org/wiki/Graphics_Interchange_Format

[22] GIF - WHATWG Wiki ( ( 版)) http://wiki.whatwg.org/wiki/GIF

[30] Welcome to Netscape Navigator Version 2.0 ( 版) http://web.archive.org/web/20030202175634/http://wp.netscape.com/eng/mozilla/2.0/relnotes/windows-2.0.html

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.

[31] RFC 3709 - Internet X.509 Public Key Infrastructure: Logotypes in X.509 Certificates ( 版) https://tools.ietf.org/html/rfc3709#page-10

Implementations MUST support both the JPEG and GIF

image formats (with MIME types of "image/jpeg" and "image/gif"

[MEDIA], respectively).