pnmpaste - Man Page
paste a rectangle into a PNM image
Examples (TL;DR)
- 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 representfalse
:pnmpaste -and|nand|or|nor|xor|xnor x y path/to/image1.pnm path/to/image2.pnm > path/to/output.pnm
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 nonnegative 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 Common Options ), 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 -replace, 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 operations: 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
Referenced By
pamcomp(1), pamwipeout(1), pbmmask(1), pnmpad(1).