Scroll to navigation

TIFFDEFERSTRILEARRAYWRITING(3tiff) LibTIFF TIFFDEFERSTRILEARRAYWRITING(3tiff)

NAME

TIFFDeferStrileArrayWriting - defer strile array writing

SYNOPSIS

#include <tiffio.h>




DESCRIPTION

TIFFDeferStrileArrayWriting() is an advanced writing function that must be used in a particular sequence, and generally together with TIFFForceStrileArrayWriting(), to achieve its intended effect. Their aim is to control when and where the StripOffsets / StripByteCounts or TileOffsets / TileByteCounts arrays are written into the file.

The purpose of this is to generate 'cloud-optimized geotiff' files where the first KB of the file only contain the IFD entries without the potentially large strile arrays. Those are written afterwards.

More precisely, when TIFFWriteCheck() <#c.TIFFWriteCheck> is called, the tag entries for those arrays will be written with type = count = offset = 0 as a temporary value.

Its effect is only valid for the current directory, and before TIFFWriteDirectory() <#c.TIFFWriteDirectory> is first called, and will be reset when changing directory.

The typical sequence of calls is:

TIFFOpen()
/* or TIFFCreateDirectory(tif) */
/* Set fields with calls to TIFFSetField(tif, ...) */
TIFFDeferStrileArrayWriting(tif)
TIFFWriteCheck(tif, ...)
TIFFWriteDirectory(tif)
/* ... potentially create other directories and come back to the above directory */
TIFFForceStrileArrayWriting(tif) /* emit the arrays at the end of file */


RETURNS

1 in case of success, 0 otherwise.

DIAGNOSTICS

All error messages are directed to the TIFFErrorExtR() <#c.TIFFErrorExtR> routine. Likewise, warning messages are directed to the TIFFWarningExtR() <#c.TIFFWarningExtR> routine.

NOTE

This functionality was introduced with libtiff 4.1.

SEE ALSO

libtiff <> (3tiff)

Author

LibTIFF contributors

Copyright

1988-2025, LibTIFF contributors

September 18, 2025 4.7