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