A user account is required in order to edit this wiki, but we've had to disable public user registrations due to spam.
To request an account, ask an autoconfirmed user on Chat (such as one of these permanent autoconfirmed members).
GIF: Difference between revisions
Jump to navigation
Jump to search
(More fractint info.) |
(→Specifications: Add MathType; enumerate fractint application authentication codes) |
||
(One intermediate revision by the same user not shown) | |||
Line 38: | Line 38: | ||
* GIF87a: [http://web.archive.org/web/20100929230301/http://www.etsimo.uniovi.es/gifanim/gif87a.txt Text] (Stanford) / [http://www.w3.org/Graphics/GIF/spec-gif87.txt Text] (W3C) | * GIF87a: [http://web.archive.org/web/20100929230301/http://www.etsimo.uniovi.es/gifanim/gif87a.txt Text] (Stanford) / [http://www.w3.org/Graphics/GIF/spec-gif87.txt Text] (W3C) | ||
* GIF89a: [http://www.w3.org/Graphics/GIF/spec-gif89a.txt Text] / [http://odur.let.rug.nl/~kleiweg/gif/GIF89a.html HTML] | * GIF89a: [http://www.w3.org/Graphics/GIF/spec-gif89a.txt Text] / [https://web.archive.org/web/20070715193723/http://odur.let.rug.nl/~kleiweg/gif/GIF89a.html HTML] | ||
* GIF Application Extensions: | * GIF Application Extensions: | ||
** <code>NETSCAPE</code> <code>2.0</code> | ** <code>NETSCAPE</code> <code>2.0</code> | ||
*** [http://odur.let.rug.nl/~kleiweg/gif/netscape.html GIF Application Extension: NETSCAPE2.0] | *** [https://web.archive.org/web/20140830100320/http://odur.let.rug.nl/~kleiweg/gif/netscape.html GIF Application Extension: NETSCAPE2.0] | ||
*** [http://www.vurdalakov.net/misc/gif/netscape-looping-application-extension Netscape Looping Application Extension] | *** [http://www.vurdalakov.net/misc/gif/netscape-looping-application-extension Netscape Looping Application Extension] | ||
*** [http://www.vurdalakov.net/misc/gif/netscape-buffering-application-extension Netscape Buffering Application Extension] | *** [http://www.vurdalakov.net/misc/gif/netscape-buffering-application-extension Netscape Buffering Application Extension] | ||
Line 49: | Line 49: | ||
*** [http://www.color.org/icc1V42.pdf Specification ICC.1:2004-10 (Profile version 4.2.0.0) – Image technology colour management: Architecture, profile format, and data structure] (section B.6) | *** [http://www.color.org/icc1V42.pdf Specification ICC.1:2004-10 (Profile version 4.2.0.0) – Image technology colour management: Architecture, profile format, and data structure] (section B.6) | ||
** <code>XMP Data</code> <code>XMP</code> | ** <code>XMP Data</code> <code>XMP</code> | ||
*** [http://wwwimages.adobe.com/www.adobe.com/content/dam/ | *** [http://wwwimages.adobe.com/www.adobe.com/content/dam/acom/en/devnet/xmp/pdfs/XMP%20SDK%20Release%20cc-2014-12/XMPSpecificationPart3.pdf XMP Specification, Part 3: Storage in Files] (section 1.1.2) | ||
** <code>fractint</code> | ** <code>fractint</code> <code>001</code> / <code>fractint</code> <code>002</code> / <code>fractint</code> <code>003</code> / <code>fractint</code> <code>004</code> / <code>fractint</code> <code>005</code> / <code>fractint</code> <code>006</code> / <code>fractint</code> <code>007</code> | ||
*** [http://fractint.net/fractsvn/trunk/fractint/common/encoder.c fractint encoder source code] | *** [http://fractint.net/fractsvn/trunk/fractint/common/encoder.c fractint encoder source code] | ||
*** [http://fractint.net/fractsvn/trunk/fractint/common/loadfile.c fractint decoder source code], with notes and backwards compatibility for older versions of the fractint extension blocks. All of their extension blocks have names of the form <code>fractint<var>nnn</var></code>, where <code><var>nnn</var></code> is a 3 digit block number. | *** [http://fractint.net/fractsvn/trunk/fractint/common/loadfile.c fractint decoder source code], with notes and backwards compatibility for older versions of the fractint extension blocks. All of their extension blocks have names of the form <code>fractint<var>nnn</var></code>, where <code><var>nnn</var></code> is a 3 digit block number. | ||
** <code>MathType</code> <code>001</code> / <code>MathType</code> <code>002</code> / <code>MathType</code> <code>003</code> | |||
*** [http://www.inr.ac.ru/~blackbox/MathType/SDK/docs/baseline_gif.htm MathType baseline information] | |||
*** [http://www.dessci.com/en/support/mathtype/tsn/tsn147.htm MathType: GIFs do not retain their DPI properties] - descriptions and sample images could be used to reverse engineer format | |||
=== Further details === | === Further details === | ||
* [[Wikipedia: | * [[Wikipedia:GIF]] | ||
* [http://fileformats.archiveteam.org/wiki/GIF GIF File Format] | * [http://fileformats.archiveteam.org/wiki/GIF GIF File Format] | ||
* [http://www.matthewflickinger.com/lab/whatsinagif/ What's in a GIF] | * [http://www.matthewflickinger.com/lab/whatsinagif/ What's in a GIF] | ||
Line 66: | Line 69: | ||
* ImageTestSuite | * ImageTestSuite | ||
** [ | ** [https://github.com/Wormnest/imagetestsuite/blob/wiki/GIFTestSuite.md Documentation] | ||
** [ | ** [https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/imagetestsuite/imagetestsuite-gif-1.00.tar.gz Images (Archive)] | ||
** [ | ** [https://github.com/Wormnest/imagetestsuite/tree/master/gif Images (git)] | ||
[[Category:Spec coordination]] | [[Category:Spec coordination]] |
Latest revision as of 20:04, 20 November 2017
Animated GIFs need a spec that, in particular, specifies how to handle timings (not all browsers honor all values, so we should specify what needs to be honored exactly)
Implementations
Gecko
- http://mxr.mozilla.org/mozilla-central/source/image/decoders/nsGIFDecoder2.h
- http://mxr.mozilla.org/mozilla-central/source/image/decoders/GIF2.h
- http://mxr.mozilla.org/mozilla-central/source/image/decoders/nsGIFDecoder2.cpp
WebKit
- http://trac.webkit.org/browser/trunk/Source/WebCore/platform/image-decoders/gif/GIFImageDecoder.h
- http://trac.webkit.org/browser/trunk/Source/WebCore/platform/image-decoders/gif/GIFImageReader.h
- http://trac.webkit.org/browser/trunk/Source/WebCore/platform/image-decoders/gif/GIFImageDecoder.cpp
- http://trac.webkit.org/browser/trunk/Source/WebCore/platform/image-decoders/gif/GIFImageReader.cpp
- http://trac.webkit.org/browser/trunk/Source/WebCore/platform/image-decoders/ImageDecoder.cpp
Blink
- https://chromium.googlesource.com/chromium/blink/+/master/Source/core/platform/image-decoders/gif/GIFImageDecoder.h
- https://chromium.googlesource.com/chromium/blink/+/master/Source/core/platform/image-decoders/gif/GIFImageReader.h
- https://chromium.googlesource.com/chromium/blink/+/master/Source/core/platform/image-decoders/gif/GIFImageDecoder.cpp
- https://chromium.googlesource.com/chromium/blink/+/master/Source/core/platform/image-decoders/gif/GIFImageReader.cpp
- https://chromium.googlesource.com/chromium/blink/+/master/Source/core/platform/image-decoders/ImageDecoder.cpp
Other
- http://sourceforge.net/p/giflib/code/ci/master/tree/ (giflib)
- https://github.com/jnordberg/gif.js (gif.js)
- https://github.com/deanm/omggif (omggif)
- https://github.com/avik-das/giferly (giferly)
- http://code.google.com/p/gifdotnet/source/browse/ (gifdotnet)
References
Specifications
- GIF87a: Text (Stanford) / Text (W3C)
- GIF89a: Text / HTML
- GIF Application Extensions:
NETSCAPE
2.0
ANIMEXTS
1.0
ICCRGBG1
012
XMP Data
XMP
- XMP Specification, Part 3: Storage in Files (section 1.1.2)
fractint
001
/fractint
002
/fractint
003
/fractint
004
/fractint
005
/fractint
006
/fractint
007
- fractint encoder source code
- fractint decoder source code, with notes and backwards compatibility for older versions of the fractint extension blocks. All of their extension blocks have names of the form
fractintnnn
, wherennn
is a 3 digit block number.
MathType
001
/MathType
002
/MathType
003
- MathType baseline information
- MathType: GIFs do not retain their DPI properties - descriptions and sample images could be used to reverse engineer format
Further details
- Wikipedia:GIF
- GIF File Format
- What's in a GIF
- Command Line Fanatic: Inside the GIF file format
- Gifology: Understanding GIF Files & GIF Animation
- All About GIF89a
Test images
- ImageTestSuite