diff options
-rw-r--r-- | directory.html | 12 | ||||
-rw-r--r-- | pnmcat.html | 162 |
2 files changed, 62 insertions, 112 deletions
diff --git a/directory.html b/directory.html index d5db244f..e09a6927 100644 --- a/directory.html +++ b/directory.html @@ -739,7 +739,7 @@ a color map containing all possible colors of given maxval <dt><b><a href="pnmrotate.html">pnmrotate</a></b> <dd>rotate an image -<dt><b><a href="pnmcat.html">pnmcat</a></b> +<dt><b><a href="pamcat.html">pamcat</a></b> <dd>concatenate images <dt><b><a href="pamcomp.html">pamcomp</a></b> @@ -1099,10 +1099,11 @@ These all work on the Netpbm formats as input. <h3 id="obsolete">Obsolete Names</h3> <p>There used to be programs by the following names. Each has been either -renamed to a more illustrative name, or superseded by a more general -function. In most cases, Netpbm is installed with symbolic links that allow -old programs and procedures to use these names but run the replacement -programs: +renamed to a more illustrative name, or superseded by a more general function. +In most cases, Netpbm is installed with symbolic links that allow old programs +and procedures to use these names but run the replacement programs. In some +cases, programs by these names still exist but are just simple backward +compatibility wrappers around the replacement program. <ul> <li><b><a href="ppmtotga.html">ppmtotga</a></b> @@ -1143,6 +1144,7 @@ programs: <li><b><a href="pcdindex.html">pcdindex</a></b> <li><b><a href="ppmbrighten.html">ppmbrighten</a></b> <li><b><a href="ppmcolors.html">ppmcolors</a></b> +<li><b><a href="pnmcat.html">pnmcat</a></b> </ul> diff --git a/pnmcat.html b/pnmcat.html index 0acca289..a2affa65 100644 --- a/pnmcat.html +++ b/pnmcat.html @@ -2,130 +2,78 @@ <html><head><title>Pnmcat User Manual</title></head> <body> <h1>pnmcat</h1> -Updated: 30 May 2011 -<br> -<a href="#index">Table Of Contents</a> +Updated: 30 July 2022 <h2>NAME</h2> -pnmcat - concatenate Netpbm images +pnmcat - replaced by pamcat -<h2 id="synopsis">SYNOPSIS</h2> - -<b>pnmcat</b> - -{<b>-leftright</b> | <b>-lr</b> | <b>-topbottom</b> | <b>-tb</b>} - -[<b>-white</b>|<b>-black</b>] - -[<b>-jtop</b>|<b>-jbottom</b>|<b>-jcenter</b>] -[<b>-jleft</b>|<b>-jright</b>|<b>-jcenter</b>] - -<i>pnmfile</i> ... - - -<p>Minimum unique abbreviation of option is acceptable. You may use -double hyphens instead of single hyphen to denote options. You may -use white space in place of the equals sign to separate an option name -from its value. - -<h2 id="description">DESCRIPTION</h2> +<h2>DESCRIPTION</h2> <p>This program is part of <a href="index.html">Netpbm</a>. -<p><b>pnmcat</b> reads one or more PNM images as input, concatenates them -either left to right or top to bottom, and produces a single PNM image -as output. - -<p>The arguments are names of input files. Any one of these, but not more -than one, may be "-" to indicate Standard Input. If you have no -arguments, that means a single input image from Standard Input (and that is -pointless - the output is the same as the input). - -<p>To assemble a regular grid of images, you can use <b>pamundice</b>. - -<p>To do the reverse, you might use <b>pamdice</b> to split an image -up into smaller ones of equal size or <b>pamcut</b> to chop off part -of an image or extract part of an image. - -<p><b>pnmtile</b> concatenates a single input image to itself repeatedly. - -<h2 id="options">OPTIONS</h2> - -<p>In addition to the options common to all programs based on libnetpbm -(most notably <b>-quiet</b>, see <a href="index.html#commonoptions"> -Common Options</a>), <b>pnmcat</b> recognizes the following -command line options: - -<h3 id="direction">Direction</h3> - -<dl compact> -<dt><b>-topbottom</b>, <b>-tb</b> -<dd>Combine images vertically, top to bottom. - -<dt><b>-leftright</b>, <b>-lr</b> -<dd>Combine images horizontally, left to right. +<p><b>pnmcat</b> was obsoleted by <a href="pamcat.html"><b>pamcat</b></a>, +introduced with Netpbm 11.00 (September 2022). <b>pamcat</b> is almost +backward compatible with <b>pnmcat</b>, plus adds many additional functions, +including the ability to process PAM images. -<p>You must specify the direction by specifying one of the above. +<p>These are the ways in which <b>pamcat</b> is not backward compatible with + <b>pnmcat</b>: -</dl> - -<h3 id="justification">Justification</h3> - -<dl compact> -<dt><b>-jtop</b>, <b>-jbottom</b>, <b>-jleft</b>, <b>-jright</b>, - <b>-jcenter</b> -<dd> - If the PNM images are not all the same height when you're concatenating left - to right or width when you're concatenating top to bottom, the smaller ones - have to be justified with the largest. By default, <b>pnmcat</b> centers - them, but you can specify justification to one side or the other with one of - the <b>-j</b><i>xxx</i> options. So, <b>-topbottom -jleft</b> would stack - the PNMs on top of each other, flush with the left edge. <b>-leftright - -jbottom</b> would line up the images left to right with their bottom edges - aligned as if sitting on a table. -</dl> - -<h3 id="margincolor">Margin Color</h3> - -<dl compact> + <ul> + <li><b>pamcat</b> produces PAM output, whereas <b>pnmcat</b> produces PNM. + With <b>pamcat</b>, If your inputs are PNM and you want PNM output, you + can run the output through <b>pnmtopnm</b>. But most Netpbm programs + that take PNM input can just as well take the PAM input, so this may not + be necessary. + + <li><b>pnmcat</b> recognizes PBM, PGM, and PPM input images as visual + images and makes sure the images are the same in the concatenated + outputs even though the output may be a different format. For example, + if you are concatenating PBM image foo.pbm and PPM image bar.ppm, the + resulting image will be PPM and the foo part of it will have the same + black and white pixels as the foo.pbm input. + + <p><b>pamcat</b>, on the other hand, work on generic PAM images and does + not really recognize colors. It sees a PBM input as a 1-plane image + and a PPM input as a 3-plane image and produces a 3-plane output + image. By default, in the example above, the foo part of the output + contains the black and white sample values in its first plane, but + zeroes in its second and third planes, which means if you take the + output image to be a PPM-like color visual image, the foo part is + black and red instead of black and white. + + <p>But this is easy to fix. Use the <b>-extendplane</b> option to say + instead of making those additional planes zero, make them copies of + the first plane. So the three panes in the foo part of the output + image will all contain the same sample values as the single plane of + the PBM input, which means if you use the output image as a color + image, those pixels are black and white. + </ul> -<dt><b>-white</b>, <b>-black</b> -<dd>These options specify what color to use to fill in the extra space -when doing the justification. If neither is specified, <b>pnmcat</b> -chooses whichever seems to be right for the images. +<p>For full backward compatibility, <b>pnmcat</b> remains in Netpbm, + implemented as a simple wrapper of <b>pamcat</b>. For the fewest problems + with future releases of Netpbm, you should not use <b>pnmcat</b> in any + new work. -</dl> -<h2 id="seealso">SEE ALSO</h2> +<h2>Using pnmcat in old Netpbm</h2> -<b><a href="pamundice.html">pamundice</a></b>, +<p>In Netpbm before 11.00, use the manual for <b>pamcat</b> with +<b>pnmcat</b>, observing the following differences: -<b><a href="pamdice.html">pamdice</a></b>, +<ul> + <li><b>pnmcat</b> accepts only PNM input (i.e. PBM, PGM, or PPM) + and produces only PNM output. The output is the highest format + (PBM, PGM, PPM) of any of its inputs. -<b><a href="pnmtile.html">pnmtile</a></b>, + <li>Features that the manual says were added to <b>pamcat</b> + in Release 11.00 or later are not there. +</ul> -<b><a href="pamcut.html">pamcut</a></b>, -<b><a href="pnm.html">pnm</a></b> +</body> +</html> -<h2 id="author">AUTHOR</h2> -Copyright (C) 1989 by Jef Poskanzer. -<hr> -<h2 id="index">Table Of Contents</h2> -<ul> -<li><a href="#synopsis">SYNOPSIS</a> -<li><a href="#description">DESCRIPTION</a> -<li><a href="#options">OPTIONS</a> - <ul> - <li><a href="#direction">Direction</a> - <li><a href="#justification">Justification</a> - <li><a href="#margincolor">Margin Color</a> - </ul> -<li><a href="#seealso">SEE ALSO</a> -<li><a href="#author">AUTHOR</a> -</ul> -</body> -</html> |