Man Linux: Main Page and Category List

NAME

       pgmtoppm - colorize a portable graymap into a portable pixmap

SYNOPSIS

       pgmtoppm colorspec [pgmfile]
       pgmtoppm colorspec1-colorspec2 [pgmfile]
       pgmtoppm -map mapfile [pgmfile]

DESCRIPTION

       Reads  a  PGM  as input.  Produces a PPM file as output with a specific
       color assigned to each gray value in the input.

       If you specify one color argument, black in the pgm  file  stays  black
       and  white  in  the  pgm file turns into the specified color in the ppm
       file.   Gray  values  in  between  are  linearly  mapped  to  differing
       intensities of the specified color.

       If  you  specify  two color arguments (separated by a dash), then black
       gets mapped to the first color and white gets mapped to the second  and
       gray  values in between get mapped linearly (across a three dimensional
       space) to colors in between.

       You can specify the color in one of five ways:

       o      A name, from an X11-style color names file.

       o      An X11-style hexadecimal specifier: rgb:r/g/b, where r g  and  b
              are each 1- to 4-digit hexadecimal numbers.

       o      An  X11-style decimal specifier: rgbi:r/g/b, where r g and b are
              floating point numbers between 0 and 1.

       o      For  backwards  compatibility,  an   old-X11-style   hexadecimal
              number: #rgb, #rrggbb, #rrrgggbbb, or #rrrrggggbbbb.

       o      For  backwards  compatibility, a triplet of numbers separated by
              commas: r,g,b, where r  g  and  b  are  floating  point  numbers
              between  0 and 1.  (This style was added before MIT came up with
              the similar rgbi style.)

       Also, you can specify an entire colormap with  the  -map  option.   The
       mapfile  is  just  a ppm file; it can be any shape, all that matters is
       the colors in it and their order.  In this case, black gets mapped into
       the  first color in the map file, and white gets mapped to the last and
       gray values in between are mapped linearly onto the sequence of  colors
       in between.

NOTE - MAXVAL

       The  "maxval," or depth, of the output image is the same as that of the
       input image.  The maxval affects the color resolution, which may  cause
       quantization  errors you don’t anticipate in your output.  For example,
       you have a simple black and white image (in fact, let’s say it’s a  PBM
       file,  since  pgmtoppm, like all Netpbm programs, can accept a PBM file
       as if it were PGM.  The maxval of this image is  1,  because  only  two
       gray  values  are  needed:  black  and  white.   Run this image through
       pgmtoppm 0f/00/00 to try  to  make  the  image  black  and  faint  red.
       Because  the  output  image  will  also have maxval 1, there is no such
       thing as faint red.   It  has  to  be  either  full-on  red  or  black.
       pgmtoppm rounds the color 0f/00/00 down to black, and you get an output
       image that is nothing but black.

       The fix is easy:  Pass the input  through  pnmdepth  on  the  way  into
       pgmtoppm  to  increase  its  depth to something that would give you the
       resolution you need to get your desired color.  In this case,  pnmdepth
       16  would  do  it.  Or spare yourself the unnecessary thinking and just
       say pnmdepth 255 .

SEE ALSO

       pnmdepth(1), rgb3toppm(1), ppmtopgm(1), ppmtorgb3(1), ppm(5), pgm(5)

AUTHOR

       Copyright (C) 1991 by Jef Poskanzer.

                                24 January 2001                    pgmtoppm(1)