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
(→References: Fix dead links) |
(→Specifications: Add MathType; enumerate fractint application authentication codes) |
||
Line 50: | Line 50: | ||
** <code>XMP Data</code> <code>XMP</code> | ** <code>XMP Data</code> <code>XMP</code> | ||
*** [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) | *** [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 === |
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