TIFFDITHER(1)

NAME
tiffdither - convert a greyscale TIFF image to bilevel using dithering

SYNOPSIS

tiffdither [ options ] input.tif output.tif

DESCRIPTION

tiffdither converts a single channel 8-bit greyscale image to a bilevel image using Floyd-Steinberg error propagation with thresholding.

OPTIONS

-c compress
    Specify the compression to use for data written to the output file:
    Compression | Description
    none | no compression
    packbits | PackBits compression
    lzw | Lempel-Ziv & Welch compression
    zip | Deflate compression
    g3 | CCITT Group 3 (T.4) compression
    g4 | for CCITT Group 4 (T.6) compression

    By default tiffdither will compress data according to the value of the Compression tag found in the source file.

    The CCITT Group 3 and Group 4 compression algorithms can only be used with bilevel data.

    Group 3 compression can be specified together with several T.4-specific options: 1d for 1-dimensional encoding, 2d for 2-dimensional encoding, and fill to force each encoded scanline to be zero-filled so that the terminating EOL code lies on a byte boundary. Group 3-specific options are specified by appending a :-separated list to the g3 option; e.g. -c g3:2d:fill to get 2D-encoded data with byte-aligned EOL codes.

    LZW compression can be specified together with a predictor value. A predictor value of 2 causes each scanline of the output image to undergo horizontal differencing before it is encoded; a value of 1 forces each scanline to be encoded without differencing. LZW-specific options are specified by appending a :-separated list to the lzw option; e.g. -c lzw:2 for LZW compression with horizontal differencing.

-f  Specify the bit fill order to use in writing output data. By default, tiffdither will create a new file with the same fill order as the original. Specifying -f lsb2msb will force data to be written with the FillOrder tag set to LSB2MSB, while -f msb2lsb will force data to be written with the FillOrder tag set to MSB2LSB.

-r  Make each strip have no more than the given number of rows.

-t  Set the threshold value for dithering. By default the threshold value is 128.

NOTES

The dither algorithm is taken from the tiffmedian program (written by Paul Heckbert).

SEE ALSO

pal2rgb <> (1), fax2tiff <> (1), tiffinfo <> (1), tiffcp <> (1), tiff2bw <> (3tiff)

Author
LibTIFF contributors

Copyright
1988-2025, LibTIFF contributors