Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Pamundice User Manual(0)			      Pamundice	User Manual(0)

NAME
       pamundice - combine grid	of images (tiles) into one

EXAMPLE
	   $ pamdice myimage.ppm -outstem=myimage_part -width=10 -height=8
	   $ pamundice myimage_part_%1d_%1a.ppm	-across=10 -down=8 >myimage.ppm

	   $ pamundice myimage.ppm myimage_part_%2a -across=13 -hoverlap=9

SYNOPSIS
       pamundice

       [-across=n]

       [-down=n]

       [-hoverlap=pixels]

       [-voverlap=pixels]

       [-verbose]

       {input_filename_pattern,	-listfile=filename}

       You  can	 use  the minimum unique abbreviation of the options.  You can
       use two hyphens instead of one.	You can	separate an option  name  from
       its value with white space instead of an	equals sign.

DESCRIPTION
       This program is part of Netpbm(1).

       pamundice  reads	a bunch	of Netpbm images as input and combines them as
       a grid of tiles into a single output image of the same kind on Standard
       Output.

       You can optionally make the pieces overlap.

       The images can either be	in files whose names indicate where they go in
       the
	 output	(e.g. 'myimage_part_03_04' could be the	image for Row 3,
	 Column	4 - see	the input_filename_pattern argument) or	listed in a
	 file, with a -listfile	option.

       The input images	must all have the same format (PAM,  PPM,  etc.)   and
       maxval  and  for	 PAM must have the same	depth and tuple	type.  All the
       images in a rank	(horizontal row	of tiles) must have the	 same  height.
       All  the	images in a file (vertical column of tiles) must have the same
       width.  But it is not required that every rank have the same height  or
       every file have the same	width.

       pamdice is the inverse of pamundice.  You can use pamundice to reassem-
       ble an image sliced up by pamdice.  You can use pamdice to recreate the
       tiles  of  an  image created by pamundice, but to do this, the original
       ranks must all have been	the same height	except for the bottom one  and
       the  original  files must all have been the same	width except the right
       one.

       One use for this	is to process an image in pieces when the whole	 image
       is too large to process.	 For example, you might	have an	image so large
       that an image editor can't read it all into memory or processes it very
       slowly.	You can	split it into smaller pieces with pamdice, edit	one at
       a time, and then	reassemble them	with pamundice.

       Of course, you can also use  pamundice  to  compose  various  kinds  of
       checkerboard images, for	example, you could write a program to render a
       chessboard by computing an image	of each	square,	then  using  pamundice
       to assemble them	into a board.

       An alternative to join images in	a single direction (i.e. a single rank
       or a single file) is pnmcat.  pnmcat gives you  more  flexibility  than
       pamundice in identifying	the input images: you can supply them on Stan-
       dard Input or as	a list of arbitrarily named files.

       To join piecewise photographs, use pnmstitch instead of pamundice,  be-
       cause it	figures	out where the pieces overlap, even if they don't over-
       lap exactly vertically or horizontally.

       To create an image of the same tile repeated in a grid, that's pnmtile.

       pnmindex	does a similar thing to	pamundice:  it	combines  a  bunch  of
       small images in a grid into a big one.  But its purpose is to produce a
       an index	image of the input images.  So it leaves  space	 between  them
       and has labels for them,	for example.

ARGUMENTS
       Unless  you  use	a -listfile option,, there is one non-option argument,
       and it is mandatory: input_filename_pattern.  This tells	pamundice what
       files contain the input tiles.

       pamundice reads the input images	from files which are named with	a pat-
       tern that indicates their positions in the combined image.   For	 exam-
       ple,  tile_00_05.ppm  could be the 6th tile over	in the 1st rank, while
       tile_04_01 is the 2nd tile over in the 5th rank.

       You cannot supply any of	the data on Standard Input, and	the files must
       be the kind that	pamundice can close and	reopen and read	the same image
       a second	time (e.g. a regular file is fine; a named  pipe  is  probably
       not).

       input_filename_pattern  is a printf-style pattern.  (See	the standard C
       library printf  subroutine).   For  the	example	 above,	 it  would  be
       tile_%2d_%2a.ppm.  The only possible conversion specifiers are:

       d      "down": The rank (row) number, starting with 0.

       a      "across":	The file (column) number, starting with	0.

       %      The per cent character (%).

       The  number between the % and the conversion specifier is the precision
       and is required.	 It says how many characters of	the file name are  de-
       scribed	by  that  conversion.	The rank or file number	is filled with
       leading zeroes as necessary.

       So the example tile_%2d_%2a.ppm means to	get the	name of	the file  that
       contains	the tile at Rank 0, File 5, you:

       o      replace  the  "%2d"  with	 the rank number, as a 2 digit decimal
	      number: "00"

       o      Replace the "%2a"	with the file number, as  a  2	digit  decimal
	      number: "05"

       Note  that this pattern describes file names that pamdice produces, ex-
       cept that the precision may be more or  less.   (pamdice	 uses  however
       many digits are required	for the	highest	numbered image).

OPTIONS
       -across=N
	      This  is the number of tiles across in the grid, i.e. the	number
	      of tiles in each rank, or	the number of files.

	      Default is 1.

       -down=N
	      This is the number of tiles up and down in the  grid,  i.e.  the
	      number of	tiles in each file, or the number of ranks.

	      Default is 1.

       -hoverlap=pixels
	      This  is the amount in pixels to overlap the tiles horizontally.
	      pamundice	clips this much	off the	right edge of every  tile  be-
	      fore  joining  it	to the adjacent	image to the right.  The tiles
	      along the	right edge remain whole.

	      There must not be	any input image	narrower than this.

	      Note that	this undoes the	effect of the same -hoverlap option of
	      pamdice.

	      Default is zero -- no overlap.

       -voverlap=pixels
	      This  is	analogous to -hoverlap,	but pamundice clips the	bottom
	      edge of each image before	joining	it to the one below.

       -listfile=filename
	      This option names	a file that contains the names of all the  in-
	      put  files.   This  is  an alternative to	specifying a file name
	      pattern as an argument.

	      The named	file contains file name, one per line.	Each file con-
	      tains the
		image for one tile, in row-major order,	top to bottom, left to
	      right.  So
		the first file is the upper left tile, the second is  the  one
	      to right of
		that,  etc.   The number of lines in the file must be equal to
	      the number of
		tiles in the output, the product of the	-across	and -down
		values.

	      The file names have no meaning to	pamundice.  You	 can  use  the
	      same
		file multiple times to have identical tiles in the output.

	      This option was new in Netpbm 10.90 (March 2020).

       -verbose
	      Print information	about the processing to	Standard Error.

HISTORY
       pamundice  was new in Netpbm 10.39 (June	2007).	Before that, pnmcat is
       the best	substitute.

SEE ALSO
       pamdice(1), pnmcat(1), pnmindex(1), pnmtile(1), pnm(5) pam(5)

DOCUMENT SOURCE
       This manual page	was generated by the Netpbm tool 'makeman'  from  HTML
       source.	The master documentation is at

	      http://netpbm.sourceforge.net/doc/pamundice.html

netpbm documentation		 26 April 2020	      Pamundice	User Manual(0)

NAME | EXAMPLE | SYNOPSIS | DESCRIPTION | ARGUMENTS | OPTIONS | HISTORY | SEE ALSO | DOCUMENT SOURCE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=pamundice&sektion=1&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help