man > pnmpaste(1)

TLDR: pnmpaste (tldr-pages)

Paste a PNM image into another PNM image.

  • Paste a PNM image into another PNM image at the specified coordinates
    pnmpaste {{x}} {{y}} {{path/to/image1.pnm}} {{path/to/image2.pnm}} > {{path/to/output.pnm}}
  • Paste the image read from `stdin` into the specified image
    {{command}} | pnmpaste {{x}} {{y}} {{path/to/image.pnm}} > {{path/to/output.pnm}}
  • Combine the overlapping pixels by the specified boolean operation, where white pixels represent `true` while black pixels represent `false`
    pnmpaste -{{and|nand|or|nor|xor|xnor}} {{x}} {{y}} {{path/to/image1.pnm}} {{path/to/image2.pnm}} > {{path/to/output.pnm}}
Pnmpaste User Manual(1)                General Commands Manual               Pnmpaste User Manual(1)

NAME
       pnmpaste - paste a rectangle into a PNM image


SYNOPSIS
       pnmpaste

       [-replace | -or | -and | -xor | -nor | -nand | -nxor]

       frompnmfile x y [intopnmfile]

       You can abbreviate all options to their shortest unique prefix.


DESCRIPTION
       This program is part of Netpbm(1).

       pnmpaste  reads two PNM images as input and inserts the first image (the "pasted image") into
       the second (the "base image") at the specified location, and produces a PNM  image  the  same
       size and type as the base image as output.

       Either file name argument (but not both) may be '-' to indicate Standard Input.  If you don't
       specify the second file argument at all, that's the same as '-'.

       x  and  y  specify  the location in the base image at which to put the top left corner of the
       pasted image, x giving the horizontal position and x giving the vertical position.  A nonneg‐
       ative value indicates the number of pixels right of the right edge or below the top  edge  of
       the base image, while a negative value indicates the number of pixels right of the right edge
       or below the bottom edge (so x = -5 means 5 pixels left of the right edge).

       If any part of the pasted image does not fit within the base image, pnmpaste fails.

       This  tool  is  most  useful in combination with pamcut.  For instance, if you want to edit a
       small segment of a large image, and your image editor cannot edit the large  image,  you  can
       cut out the segment you are interested in, edit it, and then paste it back in.

       Another useful companion tool is pbmmask.

       pamcomp  is  a  more general tool, except that it lacks the "or," "and," and "xor" functions.
       pamcomp allows you to specify a transparency mask in order to have only part of the  inserted
       image  get  inserted.  So the inserted pixels need not be a rectangle.  You can also have the
       inserted image be translucent, so the resulting image is a mixture of the inserted image  and
       the base image.


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



       -replace, -or, -and, -xor,
              -nor, -nand, -nxor

              These option specify the operation to use when doing the paste.  The default  is  -re‐
              place,  which  means  to do the obvious paste: replace pixels of the "into" image with
              those of the "from" image.

              -and, -nand, -or, -nor, -xor, and nxor are allowed only if both input images  are  PBM
              images.  They say to combine the "from" and "into" images by performing boolean opera‐
              tions:  Each  pixel  of the output image is the result of the boolean operation on the
              corresponding pixels of the two input images, where white is TRUE and black is FALSE.

              Note that this is different from what you would get by doing a bit arithmetic  on  the
              bits  in the PBM images, because in PBM, white is represented by a 0 bit, and 0 in bit
              arithmetic corresponds to FALSE in boolean arithmetic.

              -nand, -nor, and -nxor were new in Netpbm 10.85 (December 2018).




SEE ALSO
       pamcomp(1), pamcut(1), pnminvert(1), pnmarith(1), pbmmask(1), pnm(1)


AUTHOR
       Copyright (C) 1989, 1991 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/pnmpaste.html

netpbm documentation                      16 December 2018                   Pnmpaste User Manual(1)
pnmpaste(1)
NAME SYNOPSIS
pnmpaste
DESCRIPTION OPTIONS
-replace, -or, -and, -xor,
SEE ALSO AUTHOR DOCUMENT SOURCE

Generated by phpman v4.10.0-7-g98e9fd5 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-09-03 19:16 @216.73.216.23
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!

^_top_^