LibTIFF Coverage of the TIFF 6.0 Specification¶
The library is capable of dealing with images that are written to follow the 5.0 or 6.0 TIFF spec. There is also considerable support for some of the more esoteric portions of the 6.0 TIFF spec.
Baseline¶
Core requirements |
Both Tags handled: |
Tiled Images |
|
Image Colorimetry Information |
|
Class B for bilevel images |
|
Class G for grayscale images |
|
Class P for palette color images |
|
Class R for RGB full color images |
|
Class F for facsimile |
(Class B tags plus...)
|
Class S for separated images |
|
Class Y for YCbCr images |
(colorimetry info from Appendix H; see above) |
Class "JPEG" for JPEG images (per TTN2) |
(Class Y tags if YCbCr) (Class S tags if CMYK)
|
In addition, the library supports some optional compression algorithms that are, in some cases, of dubious value.
Compression tag value |
Compression algorithm |
---|---|
32766 |
NeXT 2-bit encoding |
32809 |
ThunderScan 4-bit encoding |
32909 |
Pixar companded 11-bit ZIP encoding |
32946 |
PKZIP-style Deflate encoding (experimental) |
34676 |
SGI 32-bit Log Luminance encoding (experimental) |
34677 |
SGI 24-bit Log Luminance encoding (experimental) |
Note that there is no support for the JPEG-related tags defined in the 6.0 specification; the JPEG support is based on the post-6.0 proposal given in TIFF Technical Note #2.
Note
For more information on the experimental Log Luminance encoding consult the materials available at http://www.anyhere.com/gward/pixformat/tiffluv.html.
The following table shows the tags that are recognized and how they are used by the library. If no use is indicated, then the library reads and writes the tag, but does not use it internally. For the meaning of the tags look in https://www.awaresystems.be/imaging/tiff/tifftags.html
libtiff
supports also many private tags allocated for organizations that wish to
store additional information in a TIFF file.
Tags for TIFF/EP and for Digital Negative (DNG) Specification 1.1.0
are included.
Note that some tags are meaningful only when a particular
compression scheme is being used; e.g. Group3Options
is only useful if Compression
is set to CCITT Group 3 encoding.
Tags of this sort are considered codec-specific
tags and the library does not recognize them except when the
Compression
tag has been previously set to the relevant compression scheme.
Codecs / Compression¶
The following tags are used by codecs.
Tag Name |
Value |
R/W< |
Library's Use (Comments) |
---|---|---|---|
|
317 |
R/W |
LZW codec |
|
347 |
R/W |
JPEG |
|
513 |
R/W |
OJPEG |
|
514 |
R/W |
OJPEG |
|
519 |
R/W |
OJPEG |
|
520 |
R/W |
OJPEG |
|
521 |
R/W |
OJPEG |
|
512 |
R/W |
OJPEG |
|
515 |
R/W |
OJPEG |
|
326 |
R/W |
CCITT / fax |
|
327 |
R/W |
CCITT / fax |
|
328 |
R/W |
CCITT / fax |
|
292 |
R/W |
CCITT / fax |
|
293 |
R/W |
CCITT / fax |
|
50674 |
R/W |
LERC |
Note: This codec-specific
tags and the library does not recognize them except when the
Compression
tag has been previously set to the relevant compression scheme.
The JPEG-related tag is specified in DRAFT TIFF Technical Note #2, which defines a revised JPEG-in-TIFF scheme (revised over the appendix that was part of the TIFF 6.0 specification).
EXIF / GPS Custom IFDs¶
In addition to the standard TIFF tags, libtiff
has predefined IFDs
(image file directories) with the tags for EXIF (version 2.32) and EXIF-GPS
as custom directories.
For reading / writing of this IFDs refer to TIFFCustomDirectory.