pnm2ppa (1) - Linux Manuals

pnm2ppa: convert portable anymap (PNM) images to HP's PPA printer format.


pnm2ppa - convert portable anymap (PNM) images to HP's PPA printer format.


pnm2ppa [options] [ -i infile ] [ -o outfile ]


Reads portable anymap (PNM) format as input. Binary PNM formats pnmraw = {ppmraw (color pixmap), pgmraw (graymap), and pbmraw (black-and-white bitmap)} are strongly preferred. Output stream can be locally processed by Hewlett-Packard's Printing Performance Architecture (PPA) printers (HP DeskJet 710C, 712C, 720C, 722C, 820C, and 1000C series).

(PNM format output can be produced from PostScript(tm) input by the GhostScript output devices "pbmraw", "pgmraw" or "ppmraw", or by "pnmraw", which will choose one of these formats as appropriate for the document.) pnm2ppa assumes the input resolution is 600dpi (or 300dpi if the command-line option --dpi300 is used): input at higher/lower resolutions will result in a correspondingly larger/smaller printed image, provided it is within the printer's allowed size range.


-b bottommargin
Sets the bottom margin bottommargin in units of 1/600 inches (e.g., -b 150 corresponds to 0.25").

-B blackness
Sets the black ink density blackness in drops per pixel (0,1,2,3,4).

Force bidirectional print sweeps.

Disables the color cartridge; will print in grey scale using only the black cartridge.

Displays the current configuration.

Treat input resolution as 300dpi instead of 600dpi.

Econofast mode: lower print quality that is faster and saves ink.

-f configFile
Re-reads configuration from configFile (after initially reading it from /etc/pnm2ppa.conf).

-F GammaFile
Overrides reading the color-correction table (Gamma curve) from the default file /etc/pnm2ppa.gamma, and uses GammaFile instead.

Enable fast ordered dithering instead of using the slower, but beautiful, Floyd-Steinberg dithering. (Has no effect in --bw mode.)

Prints a page of color intensity samples (for comparison with gamma.ppm data produced by calibrate_ppa). This is part of a color-correction procedure; see COLOR.txt for more details.

-h, --help
Displays program usage.

-i infile
Input file infile is either a path to a PPM file, or '-' to indicate stdin (defaults to stdin).

-l leftmargin
Sets the left margin leftmargin in units of 1/600 inches (e.g., -l 150 corresponds to 0.25").

Switches off any color-correction.

-o outfile | -
Output file outfile is either a path to a file or device, or '-' to indicate stdout (defaults to stdout).

Disables the black ink cartridge; i.e., print using only the color ink cartridge, even for printing "black". This might be useful for printing high-quality color images.

-r rightmargin
Sets the right margin rightmargin in units of 1/600 inches (e.g., -r 150 corresponds to 0.25").

-s papersize
Sets the default paper size (now used only for color-correction output produced by the -g option). In normal use, pnm2ppa now instead reads the paper dimensions from pnm input file headers, and checks that it is a valid papersize for the given printer model. Possible values for papersize are a4 (A4), letter or us (US Letter, 8.5"x11"), legal (US Legal, 8.5"x14"). The default is US Letter.

-t topmargin
Sets the top margin topmargin in units of 1/600 inches (ie -t 150 corresponds to 0.25").

Force unidirectional (left to right) print sweeps. Useful if "shearing" is a problem for high quality color images.

-v printertype
Selects the printer model. Possible values of printertype are: 710, 712, 720, 722, 820 and 1000. The default is the HP DeskJet 7X0 Series (710, 712, 720, 722).

Displays the program's System Log messages on the standard output, as well.

Displays the program's version information.

-x xoffset
Sets the x-offset xoffset from the left of the page. Units are 1/600 inches.

-y yoffset
Sets the y-offset yoffset from the top of the page. Units are 1/600 inches.



The default configuration file /etc/pnm2ppa.conf is read in first. Command line arguments then modify the resulting definitions.

The -v option resets all definitions (margins, offsets, etc.) back to the inbuilt defaults for that printer and should be used before subsequent -b, -l, -r, -t, -x and -y arguments.


Default configuration file.

Default Gamma (color-correction) file.


This code is licensed under the GNU Public License version 2. See LICENSE for details.

(c) 1998-1999  Tim Norman

(c) 1999       Giorgio Marzano

(c) 1999       Andrew van der Stock

(c) 1998-2002  Various authors for many, many fixes


This program was originally pbm2ppa, written by Tim Norman. It originally supported black and white output on the 820 series. Tim added nascent color support in early 1999. In May 1999, Giorgio Marzano started making real headway in getting color support working properly. Andrew van der Stock has maintained the code since September 1999, and made it available at


Faint horizontal lines marking boundaries between print sweeps may be visible. You may get better results when printing images, with the options:
  -p --uni  (this may no longer apply since recent code improvements).


pnm(5), ppm(5), pbm(5)