Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
TIFFCP(1)			     LibTIFF			       TIFFCP(1)

NAME
     tiffcp - copy (and possibly convert) a TIFF file

SYNOPSIS
     tiffcp [ options ] src1.tif a| srcN.tif dst.tif

DESCRIPTION
     tiffcp  combines  one or more files created according to the Tag Image File
     Format, Revision 6.0 into a single TIFF file.  Because the output file  may
     be  compressed  using a different algorithm than the input files, tiffcp is
     most often used to convert between different compression schemes.

     By default, tiffcp will copy all the understood tags in a TIFF directory of
     an input file to the associated directory in the output file.

     tiffcp can be used to reorganize the storage characteristics of data  in  a
     file,  but it is explicitly intended to not alter or convert the image data
     content in any way.

OPTIONS
     -a     Append to an existing output file instead of overwriting it.

     -b image
	    subtract the following monochrome image from all  others  processed.
	    This  can be used to remove a noise bias from a set of images.  This
	    bias image is typically an image of noise the camera  saw  with  its
	    shutter closed.

     -B     Force  output to be written with Big-Endian byte order.  This option
	    only has an effect when the output file is	created  or  overwritten
	    and not when it is appended to.

     -C     Suppress the use of "strip chopping" when reading images that have a
	    single strip/tile of uncompressed data.

     -c     Specify  the compression to use for data written to the output file:
	    -c none for no compression, -c packbits for PackBits compression, -c
	    lzw for Lempel-Ziv & Welch compression, -c zip for Deflate	compres-
	    sion,  -c lzma for LZMA2 compression, -c jpeg for baseline JPEG com-
	    pression, -c g3 for CCITT Group 3 (T.4) compression, -c g4 for CCITT
	    Group 4 (T.6) compression, or -c sgilog for SGILOG compression.

	    By default tiffcp 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-spe-
	    cific 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, Deflate and LZMA2 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  en-
	    coded;  a value of 1 forces each scanline to be encoded without dif-
	    ferencing. A value 3 is for floating point predictor which	you  can
	    use  if the encoded data are in floating point format.  LZW-specific
	    options are specified by appending a :-separated list to the lzw op-
	    tion; e.g. -c lzw:2 for LZW compression with  horizontal  differenc-
	    ing.

	    Deflate  and  LZMA2  encoders support various compression levels (or
	    encoder presets) set as character p and a preset number. p1  is  the
	    fastest  one  with the worst compression ratio and p9 is the slowest
	    but with the best possible ratio; e.g. -c zip:3:p9 for  Deflate  en-
	    coding with maximum compression level and floating point predictor.

	    For  the  Deflate  codec, and in a libtiff build with libdeflate en-
	    abled, p12 is actually the maximum level.

	    For the Deflate codec, and in a libtiff build  with  libdeflate  en-
	    abled,  s0 can be used to require zlib to be used, and s1 for libde-
	    flate (defaults to libdeflate when it is available).

     -f fillorder
	    Specify the bit fill order to use in writing output  data.	 By  de-
	    fault, tiffcp 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.

     -i     Ignore  non-fatal  read  errors and continue processing of the input
	    file.

     -l     Specify the length of a tile (in pixels).

	    tiffcp attempts to set the tile dimensions so that no  more  than  8
	    kilobytes of data appear in a tile.

     -L     Force  output to be written with Little-Endian byte order.	This op-
	    tion only has an effect when the output file is created or overwrit-
	    ten and not when it is appended to.

     -M     Suppress the use of memory-mapped files when reading images.

     -o offset
	    Set initial directory offset.

     -p     Specify the planar configuration to use in writing image  data  that
	    has one 8-bit sample per pixel. By default, tiffcp will create a new
	    file with the same planar configuration as the original.  Specifying
	    -p	contig	will  force  data  to  be written with multi-sample data
	    packed together, while -p separate will force samples to be  written
	    in separate planes.

     -r     Specify the number of rows (scanlines) in each strip of data written
	    to	the  output  file.   By  default (or when value 0 is specified),
	    tiffcp attempts to set the rows/strip that no more than 8  kilobytes
	    of	data  appear in a strip. If you specify special value -1 it will
	    results in infinite number of the rows per strip. The  entire  image
	    will be the one strip in that case.

     -s     Force  the	output	file to be written with data organized in strips
	    (rather than tiles).

     -t     Force the output file to be written with  data  organized  in  tiles
	    (rather than strips). options can be used to force the resultant im-
	    age to be written as strips or tiles of data, respectively.

     -w     Specify  the  width of a tile (in pixels). :program::tiffcp attempts
	    to set the tile dimensions so that no more than 8 kilobytes of  data
	    appear in a tile.

     -x     Force  the	output	file  to be written with PAGENUMBER value in se-
	    quence.

     -8     Write BigTIFF instead of classic TIFF format.

     -,= character
	    substitute character for , in parsing  image  directory  indices  in
	    files.   This  is  necessary if filenames contain commas.  Note that
	    -,= with whitespace immediately following will disable  the  special
	    meaning of the , entirely.	See examples.

     -m size
	    Set  maximum memory allocation size (in MiB). The default is 256MiB.
	    Set to 0 to disable the limit.

EXAMPLES
     The following concatenates two files and writes the result using LZW encod-
     ing:

	tiffcp -c lzw a.tif b.tif result.tif

     To convert a G3 1d-encoded TIFF to a single strip of  G4-encoded  data  the
     following might be used:

	tiffcp -c g4 -r 10000 g3.tif g4.tif

     (1000 is just a number that is larger than the number of rows in the source
     file.)

     To  extract a selected set of images from a multi-image TIFF file, the file
     name may be immediately followed by a , separated list of	image  directory
     indices.	The first image is always in directory 0.  Thus, to copy the 1st
     and 3rd images of image file album.tif to result.tif:

	tiffcp album.tif,0,2 result.tif

     A trailing comma denotes remaining images in sequence.  The following  com-
     mand will copy all image with except the first one:

	tiffcp album.tif,1, result.tif

     Given  file  CCD.tif  whose  first image is a noise bias followed by images
     which include that bias, subtract the noise from all those images following
     it (while decompressing) with the command:

	tiffcp -c none -b CCD.tif CCD.tif,1, result.tif

     If the file above were named CCD,X.tif, the -,= option would be required to
     correctly parse this filename with image numbers, as follows:

	tiffcp -c none -,=% -b CCD,X.tif CCD,X%1%.tif result.tif

SEE ALSO
     pal2rgb (1), tiffinfo (1), tiffcmp  (1),  tiffmedian  (1),  tiffsplit  (1),
     libtiff (3tiff)

AUTHOR
     LibTIFF contributors

COPYRIGHT
     1988-2025, LibTIFF contributors

4.7				  Sep 11, 2025			       TIFFCP(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=tiffcp&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help