Tagged Image File Format

TIFF is a flexible and adaptable file format. It can handle multiple images and data in a single file through the inclusion of "tags" in the file header. Tags can indicate the basic geometry of the image, such as its size, or define how the image data is arranged and whether various image compression options are used. For example, TIFF can be used as a container for JPEG and RLE compressed images. The ability to store image data in a lossless format makes TIFF files a useful method for archiving images. Other TIFF file options include multiple layers or pages.

Currently Imaging uses LibTiff C library to load and save TIFFs. It can read and write most types of TIFF files. But it is currently available only in Delphi (uses LibTiffDelphi object files) and it can make your compiled binaries quite big (almost 400 KiB size increase when compiled with TIFF support). If you don't need TIFF support and want smaller exe instead you can disable it by uncommenting {$DEFINE DONT_LINK_TIFF} line in in ImagingExtras.pas unit.

Native Object Pascal TIFF support is planned for some future Imaging release.

Tagged Image File Format File Format Support
FormatTImageFormat equivalentLoadingSaving
8 bit indexed ifIndex8 YesYes
24 bit RGB ifR8G8B8 YesYes
48 bit RGB ifR16G16B16 YesYes
32 bit ARGB ifA8R8G8B8 YesYes
64 bit ARGB ifA16R16G16B16 YesYes
8 bit grayscale ifGray8 YesYes
16 bit grayscale ifGray16 YesYes
16 bit grayscale + alpha ifA8Gray8 YesYes
32 bit grayscale + alpha ifA16Gray16 YesYes
32 bit grayscale ifGray32 YesYes
16 bit R FP16 ifR16F YesYes
64 bit ARGB FP16 ifA16R16G16B16F YesYes
32 bit R FP32 ifR32F YesYes
128 bit ARGB FP32 ifA32B32G32R32F YesYes
other types depends on type Yes/NoNo