All options may be abbreviated to the shortest unique prefix. You may use two hyphens instead of one. You may separate an option from its value with a space instead of =.
This program is part of Netpbm.
pamstack reads multiple PAM or PNM images as input and produces a PAM image as output, consisting of all the planes (channels) of the inputs, stacked in the order specified.
It can also just change the tuple type of a single PAM image.
For any one (but not more) of the input files, you may specify "-" to mean Standard Input. If you specify no arguments at all, the input is one file: Standard Input.
The output is the same dimensions as the inputs, except that the depth is the sum of the depths of the inputs. The maxval is the same as the inputs if they are all alike, and controlled by -firstmaxval and -lcmmaxval if not. The tuple type is a null string unless you specify the -tupletype option.
pamstack fails if the inputs are not all the same width and height. It also fails if they do not all have the same maxval, unless you specify -firstmaxval or -lcmmaxval.
pamstack works with multi-image streams. It stacks the 1st image in all the streams into one output image (the first one in the output stream), then stacks the 2nd image in all the streams into the 2nd image in the output stream, and so on, until one of the streams runs dry. It's like a matrix operation.
Before Netpbm 10.32 (February 2006), pamstack ignored all but the first image in each input stream.
pamchannel does the opposite of pamstack: It extracts individual planes from a single PAM.
Use pamtopnm to convert a suitable PAM image to a more traditional PNM (PBM, PGM, or PPM) image. (But there's no need to do that if you're going to feed it to a modern Netpbm program -- they all take suitable PAM input directly).
One example of using pamstack is that some Netpbm programs accept as input a PAM that represents graphic image with transparency information. Taking a color image for example, this would be a PAM with tuple type "RGB_ALPHA". In Netpbm, such images were traditionally represented as two images - a PPM for the color and a PGM for the transparency. To convert a PPM/PGM pair into PAM(RGB_ALPHA) input that newer programs require, do something like this:
$ pamstack -tupletype=RGB_ALPHA myimage.ppm myalpha.pgm | \ pamtouil >myimage.uil
In addition to the options common to all programs based on libnetpbm (most notably -quiet, see Common Options), pamstack recognizes the following command line option:
By default, pamstack requires all the input images to have the same maxval. If they don't, it fails.
You cannot specify this with -lcmmaxval.
This option was new in Netpbm 11.03 (June 2023).
By default, pamstack requires all the input images to have the same maxval. If they don't, it fails.
You cannot specify this with -firstmaxval.
This option was new in Netpbm 11.03 (June 2023).
pamstack was new in Netpbm 10.0 (June 2002).