ppmtoicr man page

ppmtoicr — convert a PPM image into NCSA ICR format



[-windowname name]

[-expand expand]

[-display display]




This program is part of Netpbm(1).

ppmtoicr reads a PPM file as input.  Produces an NCSA Telnet Interactive Color Raster graphic file as output.

If ppmfile is not supplied, ppmtoicr reads from Standard Input.

Interactive Color Raster (ICR) is a protocol for displaying raster graphics on workstation screens. The protocol is implemented in NCSA Telnet for the Macintosh version 2.3.  The ICR protocol shares characteristics of the Tektronix graphics terminal emulation protocol. For example, escape sequences are used to control the display.

ppmtoicr will output the appropriate sequences to create a window of the dimensions of the input image, create a colormap of up to 256 colors on the display, then load the picture data into the window.

Note that there is no icrtoppm tool - this transformation is one way.


-windowname name

Output will be displayed in name (Default is to use ppmfile or "untitled" if the input is from Standard Input).

-expand expand

Output will be expanded on display by factor expand (For example, a value of 2 will cause four pixels to be displayed for every input pixel.)

-display display

Output will be displayed on screen numbered display


To display a PPM file named ppmfile using the protocol:

    ppmtoicr ppmfile

This will create a window named ppmfile on the display with the correct dimensions for ppmfile, create and download a colormap of up to 256 colors, and download the picture into the window.  You may achieve the same effect with the following sequence:

    ppmtoicr ppmfile > filename
    cat filename

To display a GIF file using the protocol in a window titled after the input file, zoom the displayed image by a factor of 2, and run-length encode the data:

    giftopnm giffile | ppmtoicr -w giffile -r -e 2


The protocol uses frequent fflush() calls to speed up display.  If you save the output to a file for later display via cat, ppmtoicr will draw much more slowly.  In either case, increasing the blocksize limit on the display will speed up transmission substantially.

See Also


NCSA Telnet for the Macintosh, University of Illinois at Urbana-Champaign (1989)


Until Netpbm 10.71 (June 2015), there was a -rle option documented, which was said to cause the output to use run length encoding compression. But because of a simple bug in option processing code, the option never had any effect.  And the compression code did not look like it worked anyway and would take a fair amount of work to fix.  Because it was unlikely anyone would ever use this program again, much less want to use run length encoding, we removed it from the documentation rather than fix the code.


Copyright (C) 1990 by Kanthan Pillay (svpillay@Princeton.EDU), Princeton University Computing and Information Technology.

Document Source

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



05 June 2015 netpbm documentation