Updated: 12 June 2008
Table Of Contents


pamtotga - convert a Netpbm image to a TrueVision Targa file


pamtotga [-mono|-cmap|-rgb] [-norle] [-name=name [pamfile]

All options can be abbreviated to their shortest unique prefix. You may use two hyphens instead of one to designate an option. You may use either white space or equals signs between an option name and its value.


This program is part of Netpbm.

pamtotga reads a PBM, PGM, PPM, or PAM image as input and produces a TrueVision Targa file as output. The PAM image may be either a BLACKANDWHITE, GRAYSCALE, RGB, or RGB_ALPHA image.

To create a TGA image with transparency (i.e. with a transparency mask), use RGB_ALPHA PAM input. Some Netpbm programs that generate images with transparency masks generate them in that format. For another way to create the proper input stream, see pamstack.

It is unclear that anything except pamtotga knows about TGAs with transparency. The history behind this feature of pamtotga is not clear. The format pamtotga produces is simply the same as an ordinary RGB TGA image except with a 4th plane added for transparency. The PixelSize field of the TGA header specifies 32 bits instead of 24 and the raster has an extra byte added to each pixel, at the tail end. The value of that byte has the same meaning as in a PAM image with maxval 255.


Make output Targa file of type 24 bit colormapped. Input must contain no more than 256 distinct colors.
Make output Targa file of type 8 bit monochrome. Input must be PBM or PGM or a PAM with BLACKANDWHITE or GRAYSCALE tuple type. See -cmap.

You may specify at most one of -mono, -cmap, and -rgb. If you specify neither, the default image type is the most highly constrained compatible type is used, where monochrome is more constrained than colormapped which is in turn more constrained than unmapped.

Make output Targa file of type 24 bit unmapped color. See -cmap.
Do not use run-length encoding in the output Targa file. Run-length encoded files are smaller, but Some Targa readers can't read run-length encoded files.
This is the value for the image ID stated in the header of the TGA output file. pamtotga truncates it as necessary to meet TGA standards.

By default, pamtotga uses the input file name argument, up to the first period (or the whole thing if there is no period). It truncates it as necessary to meet TGA standards. If you specify (or default to) Standard Input, pamtotga omits the image ID from the TGA header.


tgatoppm, pnmquant, pamstack, pam pnm


This program was called ppmtotga until Netpbm 10.6 (July 2002). That was always a misnomer, though, because a PPM class program would not be able to tell the difference between PGM and PPM input (it would all look like PPM), and thus could not choose the output Targa image type based on the type of the input. Netpbm 10.6 also added the ability to handle a transparency channel, so it became a PAM class program.

In Netpbm 10.15 (April 2003), the program became the first in the Netpbm package to recognize a transparency channel in a PAM. It recognized tuple type "RGBA". But when this kind of PAM image was later added to the PAM specification, it was specified with tuple type "RGB_ALPHA". So in Netpbm 10-26 (January 2005), pamtotga changed to recognize "RGB_ALPHA" instead of "RGBA".


Copyright (C) 1989, 1991 by Mark Shand and Jef Poskanzer.

Table Of Contents