Man Pages

pnmmontage(1) - phpMan pnmmontage(1) - phpMan

Command: man perldoc info search(apropos)  


Pnmmontage User Manual(0)                            Pnmmontage User Manual(0)



NAME
       pnmmontage - create a montage of PNM images


SYNOPSIS
       pnmmontage

       [-header=headerfile]

       [-quality=n]

       [-prefix=prefix]

       [-0|-1|-2|...|-9]

       [-data=filename]

       pnmfile...


DESCRIPTION
       This program is part of Netpbm(1).

       pnmmontage packs images of differing sizes into a minimum-area composite image, optionally producing a C header
       file with the locations of the subimages within the composite image.


OPTIONS
       -data=filename
              This option causes pnmmontage to write a file that describes in machine-readable form the  positions  of
              the original images within the packed image.  Here is an example:


                          :0:0:227:298
                          ../image1.ppm:0:0:227:149
                          ../image2.ppm:0:149:227:149

              This option was new in Netpbm 10.6 (July 2002).


       -header=filename
              Tells  pnmmontage  to  write  a  C header file of the locations of the original images within the packed
              image.  Each original image generates four #defines within the packed  file:  xxxX,  xxxY,  xxxSZX,  and
              xxxSZY,  where  xxx  is  the  name  of  the  file, converted to all uppercase.  The output also includes
              #defines OVERALLX and OVERALLY, which specifies the total size of the montage image.

              Here is an example:


                          #define OVERALLX 227
                          #define OVERALLY 298

                          #define X 0
                          #define Y 0
                          #define SZX 227
                          #define SZY 149

                          #define X 0
                          #define Y 149
                          #define SZX 227
                          #define SZY 149


       -prefix
              Tells pnmmontage to use the specified prefix on all of the #defines it generates.


       -quality
              Before attempting to place the subimages, pnmmontage will calculate a minimum possible area for the mon-
              tage;  this  is  either the total of the areas of all the subimages, or the width of the widest subimage
              times the height of the tallest subimage, whichever is greater.  pnmmontage then  initiates  a  problem-
              space  search to find the best packing; if it finds a solution that is (at least) as good as the minimum
              area times the quality as a percent, it will break out of the search.  Thus, -quality=100 will find  the
              best possible solution; however, it may take a very long time to do so.  The default is -quality=200.


       -0, -1, ... -9
              These options control the quality at a higher level than -q; -0 is the worst quality (literally pick the
              first solution found), while -9 is the best quality (perform an exhaustive search of problem  space  for
              the absolute best packing).  The higher the number, the slower the computation.  The default is -5.





NOTES
       Using  -9  is excessively slow on all but the smallest image sets.  If the input images differ in maxvals, then
       pnmmontage will pick the smallest maxval which is evenly divisible by each  of  the  maxvals  of  the  original
       images.

       The  minimum area arrangement is often not a convenient shape.  For example, it might be a tall, thin column of
       images, when you'd rather have something more square.  To force a minimum width or height, you  can  include  a
       strut  image  - a black image that wide and one pixel high.  Similarly, you can use a vertical strut to force a
       minimum height.



SEE ALSO
       pnmcat(1), pnmindex(1), pnm(1), pam(1), pbm(1), pgm(1), ppm(1)


HISTORY
       pnmmontage was new in Netpbm 9.10 (January 2001).



AUTHOR
       Copyright (C) 2000 by Ben Olmstead.



netpbm documentation           03 November 2007      Pnmmontage User Manual(0)