TIFF Image

From XentaxWiki
Jump to: navigation, search

Back to index | Edit this page

TIFF


Format Specifications

// header
2 bytes (char) - endianess  // "II" - little endian
                            // "MM" - big endian
2 bytes (uint16) - magic // "42"
4 bytes (uint32) - offset of the first IFD (Image File Directory)


// data
x bytes - image data


// Image File Directory
2 bytes (uint16) - number of directory entries

num_of_entries *
{
   // IFD entry structure
   2 bytes (uint16) - entry tag  // "256" - image width
                                 // "257" - image length
                                 // "258" - bits per sample
                                 // "259" - compression type 
                                 // "262" - photometric interpretation (e.g. RGB, CMYK)
                                 // "270" - image description
                                 // "273" - strip offsets
                                 // "274" - orientation
                                 // "277" - samples per pixel   
                                 // "278" - rows per strip 
                                 // "279" - strip byte counts    
                                 // "282" - X Resolution                 
                                 // "283" - Y Resolution
                                 etc. etc.


   2 bytes (uint16) - field type  // "1" = BYTE (uint8)
                                  // "2" = ASCII (char)
                                  // "3" = SHORT (uint16)
                                  // "4" = LONG (uint32)
                                  // "5" = RATIONAL (two LONGs)
                                  // "6" = SBYTE (int8)
                                  // "7" = UNDEFINED (1 byte that can contain anything)
                                  // "8" = SSHORT (int16)
                                  // "9" = SLONG (int32)
                                  // "10" = SRATIONAL (two SLONGs)
                                  // "11" = FLOAT (4-byte float)
                                  // "12" = DOUBLE (8-byte double)
   4 bytes (uint32) - values count
   x bytes - value 4-byte offset or value itself
   2 bytes - padding
}

4 bytes (uint32) - next IFD offset

TIFF Image Types

  • bilevel
  • grayscale
  • palette-color
  • full-color

Tags required for bilevel images: 256, 257, 259, 262, 273, 278, 279, 282, 283, 296.
Tags required for greyscale images: 256, 257, 258, 259, 262, 273, 278, 279, 282, 283, 296.
Tags required for palette-color images: 256, 257, 258, 259, 262, 273, 278, 279, 282, 283, 296, 320.
Tags required for RGB images: 256, 257, 258, 259, 262, 273, 277, 278, 279, 282, 283, 296.


MultiEx BMS Script

Not written yet.

Notes and Comments

None.

Compatible Programs

  • IrfanView
  • GIMP

See Also