Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 97

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 100

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 103

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Defines.php on line 187

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/WebStart.php on line 115

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Setup.php on line 381

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Setup.php on line 382

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Setup.php on line 383

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Setup.php on line 384

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/languages/Language.php on line 20

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: include(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/languages/Language.php on line 668

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:97) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:97) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: include_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Skin.php on line 153

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/skins/Vector.deps.php on line 11

Warning: require_once(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/Skin.php on line 155

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: include(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/resourceloader/ResourceLoader.php on line 201

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007

Warning: require(): Unable to allocate memory for pool. in /usr/local/www/mediawiki/includes/AutoLoader.php on line 1007
TIFF - Just Solve the File Format Problem

TIFF

From Just Solve the File Format Problem
Revision as of 20:41, 20 December 2024 by Thorsted (Talk | contribs)

Jump to: navigation, search
File Format
Name TIFF
Ontology
Extension(s) .tif, .tiff
MIME Type(s) image/tiff
LoCFDD fdd000022
PRONOM fmt/353
Wikidata ID Q215106
Released 1986

TIFF, formerly known as Tag(ged) Image File Format, is an image format capable of storing multiple high quality images in a single file.

Contents

Discussion

A TIFF image may be uncompressed or use a compression scheme internally. Two of the most widely used compression schemes in TIFF files are lossless, including LZW and, for bitonal images CCITT Group 4, as used for facsimile transmission [fax]. JPEG baseline DCT-based lossy compression is also used.

Several subtypes and extensions of TIFF exist, including TIFF/EP, TIFF/IT, DNG, GeoTIFF, TIFF-FX, and BigTIFF. Multi-image TIFFs may represent sequences of images (such as scanned pages of a document), image tiles, or different versions of the same image, for example Pyramid TIFFs that incorporate images at different resolutions (often tiled). Some software that can read and display a TIFF file may only open the primary image.

TI/A (formerly TIFF/A) is a proposed archival standard based on TIFF (but no longer using its name due to objections by Adobe, which owns the rights to the name TIFF) which is in progress of development.

Format details

Compression

Tag 259 indicates the image compression scheme, as a coded integer. Some of the known compression schemes are listed below. Some of these are not used in genuine TIFF files, but only in other TIFF-like formats.

Code Compression scheme
1 uncompressed
2 CCITTRLE. 1-dimensional CCITT Group 3. Essentially the same as code 3, but with different settings. There are no end-of-line markers, and each row is aligned on a byte boundary. See this description from the Encyclopedia of Graphics File Formats.
3 1- or 2-dimensional CCITT Group 3, depending on the value of T4Options bit 0.
4 CCITT Group 4
5 LZW
6 "Old style" JPEG
7 "New style" JPEG
8 DEFLATE (zlib format)
9, 10 JBIG (refer to TIFF-FX)
32766 NeXT 2-bit RLE
32767 (Used by Sony ARW.)
32769 Packed RAW / NIKON_PACK (Used by Epson ERF.)
32770 (Used by Samsung SRW.)
32771 CCITTRLEW. Same as code 2, except that rows are aligned on a 2-byte boundary.
32773 PackBits
32809 ThunderScan compression
32867 Kodak KDC (unconfirmed)
32895, 32896, 32897, 32898 IT8CTPAD, IT8LW, IT8MP, IT8BL (refer to TIFF/IT)
32908 PIXARFILM. Pixar 10-bit LZW
32909 PIXARLOG. Pixar companded 11-bit ZIP
32946 DEFLATE (same as code 8)
32947 (Used by Kodak DCS.)
33003, 33005 (Used by Aperio SVS.)
34661 JBIG
34676 SGILOG. 32-bit SGI Log Luminance RLE
34677 SGILOG24. 24-bit SGI Log Luminance packed
34692 (Used by LuraDocument Format.)
34712 JPEG 2000
34713 (Used by Nikon NEF.)
34715 JBIG2 (TIFF-FX extension)
34718, 34719, 34720 (Used by MDI.)
34887 LERC
34892 Lossy JPEG (refer to DNG)
34925 LZMA2

Unregistered/private/rogue compression codes:

Code Compression scheme
99 JPEG (Used by Leaf MOS.)
262 Kodak 262 (unconfirmed)
50000 Zstandard
50001 WebP
50002 JPEG XL
65000 (Used by Kodak DCR.)
65535 (Used by Pentax PEF.)

Color types

Tag 262 indicates the color type ("photometric interpretation") of the image, as a coded integer. Some of the known color types are listed below.

Code Color type
0 Grayscale or bi-level, white is 0
1 Grayscale or bi-level, black is 0
2 RGB
3 Palette color
5 CMYK
6 YCbCr
8 CIE L*a*b*
9 ICC L*a*b*
10 ITU L*a*b* (refer to TIFF-FX)
32803 CFA (refer to DNG)
32844 CIE Log2(L)
32845 CIE Log2(L) (u',v')
34892 LinearRaw (refer to DNG)

Identification

TIFF files begin with bytes 4D 4D 00 2A (big-endian), or 49 49 2A 00 (little-endian).

This does not account for BigTIFF format, which you may or may not consider to be a kind of TIFF.

File signatures

Some TIFF-like formats use a different file signature (the first few bytes of the file) to help identify them. Some of the known signatures are listed here.

(For formats lacking a public specification, this table may include a hypothetical signature for a byte order that has not been observed.)

Big-endian signature Little-endian signature Format
4d 4d 00 2a 49 49 2a 00 TIFF
4d 4d 00 2b 49 49 2b 00 BigTIFF
4d 4d 00 55 49 49 55 00 Panasonic RAW/RW2
49 49 bc 01 JPEG XR
49 49 4e 31 NIFF (Navy Image File Format)
4d 4d 43 52 49 49 52 43 DNG camera profile
4d 4d 4f 52 49 49 52 4f Olympus ORF
4d 4d 53 52 49 49 52 53 Olympus ORF
45 50 2a 00 MDI

Non-TIFF formats that could be mistaken for TIFF include:

Related formats

See also Category:TIFF.

  • Tag 700 contains XMP data.
  • Tag 32932 contains TIFF annotation data.
  • Tag 33723 contains IPTC-IIM data.
  • Tag 34152 is for AFCP.
  • Tag 34377 contains Photoshop Image Resources.
  • Tags 34665 (Exif IFD), 34853 (GPS IFD), and 40965 (Interoperability IFD) point to Exif directories.
  • Tag 34675 contains an ICC profile.
  • Tag 37680: See OLE Property Set.
  • Tag 37724 (ImageSourceData) contains (after a 36-byte signature) a "series of tagged blocks", as described in the Photoshop PSD specification and the Adobe Photoshop TIFF Technical Notes document. In some TIFF files, this data has been observed to use little-endian byte order, with block signatures of "MIB8" instead of the usual "8BIM".
  • Tag 50933 (ExtraCameraProfiles) points to DNG camera profiles.
  • Raw camera formats are often based on TIFF.

Specifications

Metadata tags

Metaformat files

Software

Most multi-format image viewers and editors support TIFF to some extent. Applications listed here have been selected arbitrarily.

Sample files

External links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:97) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:97) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38

Warning: Cannot modify header information - headers already sent by (output started at /usr/local/www/mediawiki/includes/WebStart.php:97) in /usr/local/www/mediawiki/includes/WebResponse.php on line 38