This is the command pnmtotiff that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
NAME
pnmtotiff - convert a portable anymap into a TIFF file
SYNOPSIS
pnmtotiff [-none|-packbits|-lzw|-g3|-g4] [-2d] [-fill] [-predictor n] [-msb2lsb|-lsb2msb]
[-rowsperstrip n] [-minisblack|-miniswhite] [-truecolor] [-color] [-indexbits 1|2|4|8]
[pnmfile]
Minimum unambiguous abbreviations of options are acceptable.
DESCRIPTION
Reads a PNM image as input. Produces a TIFF file as output.
The output goes to Standard Output, which must be a seekable file. That means no pipes,
but any regular file should work.
OPTIONS
By default, pnmtotiff creates a TIFF file with no compression. This is your best bet most
of the time. If you want to try another compression scheme or tweak some of the other
even more obscure output options, there are a number of flags to play with.
Actually, the best default would be to use LZW compression, which is what pnmtotiff used
to do by default. However, the Tiff library no longer does LZW compression due to
concerns with violating Unisys's patent on LZW compression.
The -none, -packbits, -lzw, -g3, -g4, -flate, and -adobeflat options are used to override
the default and set the compression scheme used in creating the output file. The CCITT
Group 3 and Group 4 compression algorithms can only be used with bilevel data. -lzw
doesn't really work because the Tiff library doesn't do LZW compression. It used to, but
its developers removed the function out of concern about violating Unisys's patent. This
option remains in case you use a Tiff library that cooperates, now or in the future. The
-2d and -fill options are meaningful only with Group 3 compression: -2d requests
2-dimensional encoding, while -fill requests that each encoded scanline be zero-filled to
a byte boundry. The -predictor option is only meaningful with LZW compression: 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.
By default, pnmtotiff creates a TIFF file with msb-to-lsb fill order. The -msb2lsb and
-lsb2msb options are used to override the default and set the fill order used in creating
the file.
The fill order is the order in which pixels are packed into a byte in the Tiff raster, in
the case that there are multiple pixels per byte. msb-to-lsb means that the leftmost
columns go into the most significant bits of the byte in the Tiff image. However, there
is considerable confusion about the meaning of fill order. Some believe it means whether
16 bit sample values in the Tiff image are little-endian or big-endian. This is totally
erroneous (The endianness of integers in a Tiff image is designated by the image's magic
number). However, ImageMagick and older Netpbm both have been known to implement that
interpretation. 2001.09.06.
If the image does not have sub-byte pixels, these options have no effect other than to set
the value of the FILLORDER tag in the Tiff image (which may be useful for those programs
that misinterpret the tag with reference to 16 bit samples).
The -rowsperstrip option can be used to set the number of rows (scanlines) in each strip
of data in the output file. By default, the output file has the number of rows per strip
set to a value that will ensure each strip is no more than 8 kilobytes long.
The -minisblack and -miniswhite option force the output image to have a "minimum is black"
or "minimum is white" photometric, respectively. If you don't specify either, pnmtotiff
uses minimum is black except when using Group 3 or Group 4 compression, in which case
pnmtotiff follows CCITT fax standards and uses "minimum is white." This usually results
in better compression and is generally preferred for bilevel coding.
Before February 2001, pnmtotiff always produced "minimum is black," due to a bug. In
either case, pnmtotiff sets the photometric interpretation tag in the TIFF output
according to which photometric is actually used.
-truecolor tells pnmtotiff to produce the 24-bit RGB form of TIFF output if it is
producing a color TIFF image. Without this option, pnmtotiff produces a colormapped
(paletted) 8-bit TIFF image unless there are more than 256 colors (and in the latter case,
issues a warning).
The -truecolor option can prevent pnmtotiff from making two passes through the input file,
thus improving speed and memory usage. See the section MULTIPLE PASSES.
If pnmtotiff produces a grayscale TIFF image, this option has no effect.
-color tells pnmtotiff to produce a color, as opposed to grayscale, TIFF image if the
input is PPM, even if it contains only shades of gray. Without this option, pnmtotiff
produces a grayscale TIFF image if the input is PPM and contains only shades of gray, and
at most 256 shades. Otherwise, it produces a color TIFF output. For PBM and PGM input,
pnmtotiff always produces grayscale TIFF output and this option has no effect.
The -color option can prevent pnmtotiff from making two passes through the input file,
thus improving speed and memory usage. See the section MULTIPLE PASSES.
The -indexbits option is meaningful only for a colormapped (paletted) image. In this kind
of image, the raster contains values which are indexes into a table of colors, with the
indexes normally taking less space that the color description in the table. pnmtotiff can
generate indexes of 1, 2, 4, or 8 bits. By default, it will use 8, because many programs
that interpret TIFF images can't handle any other width.
NOTES
There are myriad variations of the TIFF format, and this program generates only a few of
them. pnmtotiff creates a grayscale TIFF file if its input is a PBM (monochrome) or PGM
(grayscale) file. pnmtotiff also creates a grayscale file if it input is PPM (color), but
there is only one color in the image. If the input is a PPM (color) file and there are
256 colors or fewer, but more than 1, pnmtotiff generates a color palette TIFF file. If
there are more colors than that, pnmtotiff generates an RGB (not RGBA) single plane TIFF
file. Use pnmtotiffcmyk to generate the cyan-magenta-yellow-black ink color separation
TIFF format.
The number of bits per sample in the TIFF output is determined by the maxval of the PNM
input. If the maxval is less than 256, the bits per sample in the output is the smallest
number that can encode the maxval. If the maxval is greater than or equal to 256, there
are 16 bits per sample in the output.
Multiple Passes
pnmtotiff reads the input image once if it can, and otherwise twice. It needs that second
pass to analyze the colors in the image and generate a color map (pallette) and determine
if the image is grayscale. So the second pass only happens when the input is PPM. And
you can avoid it then by specifying both the -truecolor and -color options.
If the input image is small enough to fit in your system's file cache, the second pass is
very fast. If not, it requires reading from disk twice, which can be slow.
When the input is from a file that cannot be rewound and reread, pnmtotiff reads the
entire input image into a temporary file which can, and works from that. Even if it only
needs one pass.
Use pnmtotiff online using onworks.net services