dwww Home | Manual pages | Find package

Pamcut User Manual(1)       General Commands Manual       Pamcut User Manual(1)

NAME
       pamcut - select a rectangular region of a PAM, PBM, PGM, or PPM image

SYNOPSIS
       pamcut

       [-left colnum]

       [-right colnum]

       [-top rownum]

       [-bottom rownum]

       [-width cols]

       [-height rows]

       [-pad]

       [-cropleft numcols]

       [-cropright numcols]

       [-croptop numrows]

       [-cropbottom numrows]

       [-reportonly]

       [-verbose]

       [left top width height]

       [pnmfile]

       Minimum  unique  abbreviations  of  options are 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.

DESCRIPTION
       This program is part of Netpbm(1).

       pamcut reads a PAM, PBM, PGM, or PPM image as  input  and  extracts  the
       specified rectangle, and produces the same kind of image as output.

       You  can specify either the rectangle to cut out and keep or specify the
       edges to crop off and discard, or a combination.

       To request edges be cropped  off,  use  options  -cropleft,  -cropright,
       -croptop,  and  -cropbottom to indicate how many rows or columns to dis-
       card.

       For example, -cropleft=50 -cropright=200 means to discard  the  leftmost
       50 and rightmost 200 columns.

       To  specify  the  rectangle  to  keep, use -left, -right, -top, -bottom,
       -width, -height, and -pad options.

       For example, -left=50 -right=200 means to keep the 151  columns  between
       Columns 50 and 200 inclusive.

       You  can  code  any  mixture of the options.  What you don't specify de-
       faults.  Those defaults are in favor of minimal cutting and in favor  of
       cutting  the  right and bottom edges off and (with -pad) minimal padding
       and padding on the right and bottom.  It is  an  error  to  overspecify,
       i.e. to specify all three of -left, -right, and -width or -top, -bottom,
       and -height or right as well as -cropright.

       There is an older way to specify the rectangle to keep: positional argu-
       ments.   Arguments were the only way available before July 2000, but you
       should not use them in new applications.  Options are easier to remember
       and read, more expressive, and allow you to use defaults.

       If you use both options and arguments, the two specifications get  mixed
       in an unspecified way.

       To  use  arguments, specify all four of the left, top, width, and height
       arguments.  left and top have the same effect as specifying them as  the
       argument of a -left or -top option, respectively.  width and height have
       the  same  effect  as  specifying  them  as  the argument of a -width or
       -height option, respectively, where they are positive.  Where  they  are
       not  positive, they have the same effect as specifying one less than the
       value as the argument to  a  -right  or  -bottom  option,  respectively.
       (E.g. width = 0 makes the cut go all the way to the right edge).  Before
       July 2000, negative numbers were not allowed for width and height.

       Input  is  from  Standard Input if you don't specify the input file pnm-
       file.

       Output is to Standard Output.

       pamcut works on a multi-image stream.  It cuts each image in the  stream
       independently  and  produces a multi-image stream output.  Before Netpbm
       10.32 (March 2006), it ignored all but the first image in the stream.

       If you are splitting a single  image  into  multiple  same-size  images,
       pamdice is faster and easier than running pamcut multiple times.

       pamcomp  is  also  useful  for cutting and padding an image to a certain
       size.  You create a background image of the desired frame dimensions and
       overlay the subject image on it.

OPTIONS
       In addition to the options common to all  programs  based  on  libnetpbm
       (most  notably -quiet, see ]8;;index.html#commonoptions\ Common Options]8;;\ ), pamcut recognizes the fol-
       lowing command line options:

       -left=colnum
              The column number of the leftmost column to  be  in  the  output.
              Columns  left  of  this get cut out.  If a nonnegative number, it
              refers to columns numbered from 0 at the left, increasing to  the
              right.   If  negative,  it  refers  to columns numbered -1 at the
              right, decreasing to the left.

       -right=colnum
              The column number of the rightmost column to be  in  the  output,
              numbered the same as for -left.  Columns to the right of this get
              cut out.

       -top=rownum
              The  row  number  of  the  topmost row to be in the output.  Rows
              above this get cut out.  If a nonnegative  number  it  refers  to
              rows  numbered  from 0 at the top, increasing downward.  If nega-
              tive, it refers to columns numbered -1 at the bottom,  decreasing
              upward.

       -bottom=rownum
              The  row  number of the bottom-most row to be in the output, num-
              bered the same as for -top.  Rows below this get cut out.

       -width=cols
              The number of columns to be in the output.  Must be positive.

       -height=rows
              The number of rows to be in the output.  Must be positive.

       -cropleft

       -cropright

       -croptop

       -cropbottom
              These options tell how many rows or  columns  to  crop  from  the
              left, right, top, or bottom edges, respectively.

              The value must not be negative.

              These  option  were  new in Netpbm 10.85 (December 2018).  Before
              that, you can achieve the same thing with -left, top,  and  nega-
              tive  values for -right and -bottom.  Remember to subtract one in
              the  latter  case;  e.g.  the  equivalent  of   -cropright=1   is
              -right=-2.

       -pad   If the rectangle you specify is not entirely within the input im-
              age, pamcut fails unless you also specify -pad.  In that case, it
              pads  the output with black up to the edges you specify.  You can
              use this option if you need to have an image  of  certain  dimen-
              sions and have an image of arbitrary dimensions.

              pnmpad also adds borders to an image, but you specify their width
              directly.

              pamcomp does a more general form of this padding.  Create a back-
              ground  image of the frame dimensions and overlay the subject im-
              age on it.  You can use options to have the subject image in  the
              center  of the frame or against any edge and make the padding any
              color (the padding color is the color of the background image).

       -reportonly
                This causes pamcut to write to Standard Output a description of
              the
                cutting it would have done instead of producing an  output  im-
              age.  See

              ]8;;#reportonly\below]8;;\  for a description of this output and ways
                to use it.

              That  description  is one line of text, containing 8 decimal num-
              bers of
                pixels, separated by spaces:

       •      column number of left cut

       •      column number of right cut

       •      row number of top cut

       •      row number of bottom cut

       •      width of input image

       •      height of input image

       •      width of output image

       •      height of output image

              The column number of the left cut is the column number in the in-
              put image of the leftmost column of the output  image.   for  the
              right cut, it is for the rightmost column of the output.  Top and
              bottom are analogous.

              The  column and row numbers can be negative if you specified -pad
              and pamcut would have added padding.  Likewise, they can  be  be-
              yond the right and bottom edge of the input image.

              Example:

                    10 109 -1 98 150 80 100 100

              This option was new in Netpbm 11.06 (March 2024).

       -verbose
              Print information about the processing to Standard Error.

SEE ALSO
       pnmcrop(1),  pamdice(1),  pamcomp(1), pnmpad(1), pamcat(1), pgmslice(1),
       pnm(1)

HISTORY
       pamcut was derived from pnmcut in Netpbm 9.20 (May 2001).   It  was  the
       first  Netpbm  program adapted to the new PAM format and programming li-
       brary.

       The predecessor pnmcut was one of the oldest tools in the  Netpbm  pack-
       age.

AUTHOR
       Copyright (C) 1989 by Jef Poskanzer.

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/pamcut.html

netpbm documentation            26 February 2024          Pamcut User Manual(1)

Generated by dwww version 1.16 on Tue Dec 16 04:19:11 CET 2025.