1Pamcat User Manual(0)                                    Pamcat User Manual(0)
2
3
4

NAME

6       pamcat - concatenate Netpbm images
7
8

SYNOPSIS

10       pamcat
11
12       {-leftright | -lr | -topbottom | -tb}
13
14       [-white|-black]
15
16       [-jtop|-jbottom|-jcenter] [-jleft|-jright|-jcenter]
17
18       [netpbmfile ... | -listfile={filename|-}]
19
20       Minimum  unique abbreviation of option is acceptable.  You may use dou‐
21       ble hyphens instead of single hyphen to denote options.   You  may  use
22       white space in place of the equals sign to separate an option name from
23       its value.
24
25

DESCRIPTION

27       This program is part of Netpbm(1).
28
29       pamcat reads one or more Netpbm images as input, concatenates them  ei‐
30       ther left to right or top to bottom, and produces a single Netpbm image
31       as output.
32
33       Options -leftright and -topbottom determine the direction
34         of the concatenation.
35
36
37       The images do not have to be the same shape:  You can  concatenate  im‐
38       ages
39         of  different  widths  top to bottom and of different heights left to
40       right.
41         You can concatenate images of different depths (numbers  of  planes).
42       You
43         can concatenate a PBM image with a PPM image.  Et cetera.
44
45       The format of the output image is the highest of the formats of the
46         input images, in the order PBM, PGM, PPM, PAM.
47
48       For PAM output, if all of the input images have the same tuple type
49         (including implied tuple types of PNM images), that is the tuple type
50       of the
51         output.  If the inputs differ, but are all visual tuple types, the
52         output's tuple type is the most primitive that can represent all
53       the
54         input.   E.g. if inputs are GRAYSCALE and RGB, the output is RGB, and
55       if the
56         inputs are GRAYSCALE_ALPHA and RGB, the output is RGB_ALPHA.  If  the
57       inputs
58         differ  and  are  not  all  visual,  the  output tuple type is a null
59       string.
60
61       When the output is PAM, its depth is the maximum of the depths of the
62         inputs (including implied depths of PNM images), but at least  enough
63       to
64         represent  the  tuple type specified above.  In the case of nonvisual
65       PAM
66         output, input images are padded to this output depth with higher num‐
67       bered
68         planes of all zeroes.
69
70       Where the input images are of different widths and you concatenate top
71         to bottom, pamcat generates output as wide as the widest of the
72         inputs  and  pads the narrower ones.  The images can be justified ei‐
73       ther
74         left, right, or center within this padded field.  Use options
75         -jleft, -jright, and -jcenter to control this.
76
77       Similarly, where the input images are of different heights and you
78         concatenate left to right, pamcat generates output as tall as the
79         tallest of the inputs and pads the shorter ones.  The images can be
80         justified either top, bottom, or center  within  this  padded  field.
81       Use
82         options
83         -jtop, -jbottom, and -jcenter to control this.
84
85       You can make the padding black or white or let pamcat determine a
86         likely  background color, with possibly different colored padding for
87       each
88         input image.  Control this with the -black and -white options.
89
90       Where the output image contains transparency  information  (because  at
91       least
92         one  of the input images does), the padding is opaque.  (That is con‐
93       sistent
94         with the result for an output image without transparency information,
95       because
96         such an image is defined to be opaque).
97
98
99       The arguments are names of input files.  Any one of these, but not more
100       than one, may be "-" to indicate Standard Input.  If you have no  argu‐
101       ments  (and  do not specify -listfile), that means a single input image
102       from Standard Input (and that is pointless - the output is the same  as
103       the  input).  You can supply the file names in a file instead of as ar‐
104       guments with a -listfile option.
105
106       Regardless of how you specify the input files, you may not concatenate
107         more files than your system's limit on  the  number  of  concur‐
108       rently
109         open files by one process.  16 is a typical number for that.
110
111       To assemble a regular grid of images, you can use pamundice.
112
113       To  do  the  reverse,  you  might use pamdice to split an image up into
114       smaller ones of equal size or pamcut to chop off part of  an  image  or
115       extract part of an image.
116
117       pnmtile concatenates a single input image to itself repeatedly.
118
119
120

OPTIONS

122       In  addition  to  the options common to all programs based on libnetpbm
123       (most notably -quiet, see
124        Common Options ⟨index.html#commonoptions⟩  ),  pamcat  recognizes  the
125       following command line options:
126
127
128   Direction
129       -topbottom, -tb
130              Combine images vertically, top to bottom.
131
132
133       -leftright, -lr
134              Combine images horizontally, left to right.
135
136              You  must  specify the direction by specifying one of the above.
137              You cannot
138                  specify both.
139
140
141
142
143   Justification
144       -jleft
145
146              Left-justify images in a top-bottom concatenation.
147
148              You cannot specify this with -jright
149
150              This option is invalid in a left-right concatenation.
151
152
153       -jright
154
155              Right-justify images in a top-bottom concatenation.
156
157              You cannot specify this with -jleft
158
159              This option is invalid in a left-right concatenation.
160
161
162       -jtop
163
164              Top-justify images in a left-right concatenation.
165
166              You cannot specify this with -jbottom
167
168              This option is invalid in a top-bottom concatenation.
169
170
171       -jbottom
172
173              Bottom-justify images in a left-right concatenation.
174
175              You cannot specify this with -jtop
176
177              This option is invalid in a top-bottom concatenation.
178
179
180       -jcenter
181
182              Center images (valid for both left-right and top-bottom concate‐
183              nations).
184                  This is the default.
185
186
187
188       By default, pamcat centers the smaller images.
189         -topbottom -jleft would stack the images on top of each other, flush
190         with the left edge.  -leftright -jbottom would line up the images
191         left  to right with their bottom edges aligned as if sitting on a ta‐
192       ble.
193
194
195
196   Padding Color
197       These options specify what color to use to fill in the extra space when
198       doing  the  justification.   If  neither  is  specified, pamcat chooses
199       whichever color seems to be right for the images, and the color may  be
200       different for each image.
201
202
203       -white Make all padding white.
204
205              You may not specify this with -black
206
207       -black Make all padding black.
208
209              You may not specify this with -white
210
211
212
213
214   Miscellaneous
215       -listfile={filename|-}
216              This  specifies the name of a file that contains the list of in‐
217              put files.
218                Option value - means the list comes from Standard Input.
219
220              The file contains one file name per  newline-delimited  line  in
221              whatever
222                  code  the  system  fopen  service expects.  You may omit the
223              newline
224                  on the last line.  Empty lines are  ignored.   There  is  no
225              mechanism for
226                  including  comments  in  the  list (so if you want to have a
227              commented list,
228                  preprocess it to remove comments before supplying it to pam‐
229              cat).
230
231              You  may  not  specify  file names as command line arguments to‐
232              gether with
233                  -listfile
234
235              You may not list more files than than your  system's  limit
236              on the
237                number  of  concurrently  open  files by one process.  16 is a
238              typical number
239                for that.
240
241              This option was new in Netpbm 11.01 (December 2022).
242
243
244
245

SEE ALSO

247       pamundice(1), pamdice(1), pnmtile(1), pamcut(1), pnm(1), pam(1)
248
249
250

HISTORY

252       pamcat was new in Netpbm 11.00 (September 2022); in earlier versions,
253         pnmcat does most of the same thing.
254
255       Primordial Netpbm/Pbmplus contained concatenation tools, but there were
256       two
257         of them: pbmcatlr for left-right concatenation of PBM images
258         and pbmcattb for top-bottom concatenation.  When the PGM and PPM
259         formats were added, these programs were combined and extended to han‐
260       dle all
261         three formats, as pnmcat.  All of this work was done by Pbmplus
262         author Jef Poskanzer.
263
264       In Netpbm 10.44 (September 2008), Akira F Urushibata added special fast
265         processing for raw PBM images, exploiting bitstring processing CPU
266         facilities.
267
268       pnmcat was one of the most essential programs in Netpbm, but one
269         thing it could not concatenate was PAM images with transparency.   So
270       in
271         Netpbm 11.00 (September 2022), Bryan Henderson wrote pamcat to
272         replace it.  It reused the raw PBM fast path code from pnmcat almost
273         verbatim.
274

DOCUMENT SOURCE

276       This  manual  page was generated by the Netpbm tool 'makeman' from HTML
277       source.  The master documentation is at
278
279              http://netpbm.sourceforge.net/doc/pamcat.html
280
281netpbm documentation           30 November 2022          Pamcat User Manual(0)
Impressum