NAME
pnmtotiffcmyk - convert a Netpbm image into a CMYK encoded TIFF file
SYNOPSIS
pnmtotiffcmyk |
[-none|-packbits|-lzw] | ||
[-predictor n] | |||
[-msb2lsb|-lsb2msb] | |||
[-rowsperstrip n] | |||
[-lowdotrange n] | |||
[-highdotrange n] | |||
[-knormal|-konly|-kremove] | |||
[[-default] |
[-theta deg]
[-gamma n]
[-gammap n]
[-negative]
DESCRIPTION
This program is part of Netpbm(1).
pnmtotiffcmykreads a PNM image as input and produces a CMYK encoded TIFF file as output. It optionally modifies the color balance and black level, and modifies removal of CMY from under K.
Output is to Standard Output, but unlike with most Netpbm programs, Standard Output must be a seekable file. An ordinary file is fine, but you cannot pipe the output to another program. Furthermore, the program replaces any content currently in the file even if it was opened for appending.
pamtotiff generates many other kinds of TIFF files.
OPTIONS
In addition to the options common to all programs based on libnetpbm (most notably -quiet, see Common Options ), pnmtotiffcmyk recognizes the following command line options:
The order of most options is not important, but options for particular conversion algorithms must appear after the algorithm is selected (-default,-negative). If you don’t select an algorithm, pnmtotiffcmyk assumes -default and the appropriate options (-theta,-gamma,-gammap) can appear anywhere.
-none,-packbits,-lzw,-predictor
Tiff files can be compressed. By default,
pnmtotiffcmyk uses LZW decompression, but
(apparently) some readers cannot read this, so you may want
to select a different algorithm
(-none,-packbits). For LZW compression, a
-predictor value of 2 forces horizontal differencing
of scanlines before encoding; a value of 1 forces no
differencing.
-msb2lsb,-lsb2msb
These options control fill order (default is
-msb2lsb).
-rowsperstrip
This sets the number of rows in an image strip (data in the
Tiff files generated by this program is stored in strips -
each strip is compressed individually). The default gives a
strip size of no more than 8 kb.
-lowdotrange,-highdotrange
These options set tag values that may be useful for
printers.
-knormal,-kremove,-konly
These options control the calculation of the CMYK ink
levels. They are useful only for testing and debugging the
code.
-kremove sets the black (K) levels to zero while leaving the other ink levels as they would be if the black level were normal.
-konly sets all inks to the normal black value.
-default,-negative
These options control what ink levels pnmtotiffcmyk
uses to represent each input color.
-negative selects a simple algorithm that generates a color negative. None of the following options apply to this algorithm. The algorithm is included as an example in the source code to help implementors of other conversions.
-default is not necessary, unless you have to countermand a -negative on the same command line.
The default conversion from RGB to CMYK is as follows: The basic values of the 3 pigments are C = 1-R, M = 1-G, Y = 1-B. From this, pnmtotiffcmyk chooses a black (K) level which is the minimum of those three. It then replaces that much of the 3 pigments with the black. I.e. it subtracts K from each of the basic C, M, and Y values.
The options below modify this conversion.
-theta
deg
-theta provides a simple correction for any color bias
that may occur in the printed image because, in practice,
inks do not exactly complement the primary colors. It
rotates the colors (before black replacement) by deg
degrees in the color wheel. Unless you are trying to produce
unusual effects you will need to use small values. Try
generating three images at -10, 0 (the default) and 10
degrees and see which has the best color balance.
-gamma
n
-gamma applies a gamma correction to the black (K) value
described above. Specifically, instead of calculating the K
value as min(C,M,Y), pnmtotiffcmyk raises that value
(normalised to the range 0 to 1) to the nth power. In
practice, this means that a value greater than 1 makes the
image lighter and a value less than 1 makes the image
darker. The range of allowed values is 0.1 to 10.
-gammap
n
This option controls the black replacement.
If you specify -gammap, pnmtotiffcmyk uses the specified gamma value in computing how much ink to remove from the 3 pigments, but still uses the regular gamma value (-gamma option) to generate the actual amount of black ink with which to replace it.
Values of n from 0.01 to 10 are valid.
For example, it may be best to only subtract black from the colored inks in the very darkest regions. In that case, n should be a large value, such as 5.
As a special case, if n is -1, pnmtotiffcmyk does not remove any pigment (but still adds the black ink). This means dark areas are even darker. Furthermore, when printed, dark areas contain a lot of ink which can make high contrast areas, like lettering, appear fuzzy. It’s hard to see what the utility of this is.
SEE ALSO
pamtotiff(1), tifftopnm(1), pnm(1)
AUTHOR
Copyright (c) 1999 Andrew Cooke (Jara Software). Released under the GPL with no warranty. See source or COPYRIGHT and LICENCE files in distribution for full details.
Much of the code uses ideas from other Netpbm programs, written by Jef Poskanzer (thanks go to him and libtiff maintainer Sam Leffler). A small section of the code - some of the tiff tag settings - is derived directly from pnmtotiff, by Jef Poskanzer, which, in turn, acknowledges Patrick Naughton with the following text:
Derived by Jef Poskanzer from ras2tif.c, which is:
Copyright (c) 1990 by Sun Microsystems, Inc.
Author: Patrick J. Naughton naughton [AT] wind.com
Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation.
This file is provided AS IS with no warranties of any kind. The author shall have no liability with respect to the infringement of copyrights, trade secrets or any patents by this file or any part thereof. In no event will the author be liable for any lost revenue or profits or other special, indirect and consequential damages.
DOCUMENT SOURCE
This manual page was generated by the Netpbm tool ’makeman’ from HTML source. The master documentation is at