about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ilbmtoppm.html4
-rw-r--r--infotopam.html2
-rw-r--r--libnetpbm_dir.html1
-rw-r--r--libnetpbm_image.html90
-rw-r--r--libppm.html48
-rw-r--r--pamgradient.html2
-rw-r--r--pamlookup.html2
-rw-r--r--pampaintspill.html2
-rw-r--r--pamrecolor.html2
-rw-r--r--pamstereogram.html2
-rw-r--r--pamtodjvurle.html2
-rw-r--r--pamtogif.html4
-rw-r--r--pamtohtmltbl.html2
-rw-r--r--pamtopng.html2
-rw-r--r--pamtosvg.html2
-rw-r--r--pgmtoppm.html2
-rw-r--r--pngtopam.html2
-rw-r--r--pnmalias.html2
-rw-r--r--pnmmargin.html2
-rw-r--r--pnmremap.html2
-rw-r--r--pnmrotate.html2
-rw-r--r--pnmshear.html2
-rw-r--r--pnmtopalm.html2
-rw-r--r--pnmtopng.html2
-rw-r--r--ppmchange.html2
-rw-r--r--ppmcolormask.html2
-rw-r--r--ppmdraw.html2
-rw-r--r--ppmglobe.html2
-rw-r--r--ppmlabel.html2
-rw-r--r--ppmmake.html31
-rw-r--r--ppmpat.html2
-rw-r--r--ppmrainbow.html2
-rw-r--r--ppmrough.html8
33 files changed, 150 insertions, 88 deletions
diff --git a/ilbmtoppm.html b/ilbmtoppm.html
index 3a1ea762..014dbdd0 100644
--- a/ilbmtoppm.html
+++ b/ilbmtoppm.html
@@ -59,8 +59,8 @@ it doesn't recognize.
 <dd>This is the color that should "show through" in places where
 the image is transparent.
 
-<P><i>color</i> is like the <a href="libppm.html#colorname">argument of
-the <b>ppm_parsecolor()</b> library routine</a>.
+<P><i>color</i> is like the <a href="libnetpbm_image.html#colorname">argument of
+the <b>pnm_parsecolor()</b> library routine</a>.
 
 <DT><B>-verbose</B>
 
diff --git a/infotopam.html b/infotopam.html
index 177f4d49..2f453655 100644
--- a/infotopam.html
+++ b/infotopam.html
@@ -111,7 +111,7 @@ using the <i>-forcecolor</i> option.</p>
   <i>-numcolors</i>, then specify an (<i>index color</i>) pair for each color
   you want to override, where <i>index</i> is a value from 0 to 3 and
   <i>color</i> the new color for that index.  Specify <i>color</i> as
-  described for the <a href= "libppm.html#colorname"><b>ppm_parsecolor()</b>
+  described for the <a href= "libnetpbm.html#colorname"><b>pnm_parsecolor()</b>
   argument</a>.</p></dd>
 
   <dt><b>-selected</b></dt>
diff --git a/libnetpbm_dir.html b/libnetpbm_dir.html
index f70c6b9e..d839f68d 100644
--- a/libnetpbm_dir.html
+++ b/libnetpbm_dir.html
@@ -156,6 +156,7 @@ services.
   <li><a href="libppm.html#manipulating_pixels">PPM_CHROM_R()</a>
   <li><a href="libppm.html#manipulating_pixels">PPM_CHROM_B()</a>
   <li><a href="libppm.html#ppm_parsecolor">ppm_parsecolor()</a>
+  <li><a href="libppm.html#ppm_parsecolor2">ppm_parsecolor2()</a>
   <li><a href="libppm.html#ppm_colorname">ppm_colorname()</a>
   <li><a href="libppm.html#ppm_readcolornamefile">ppm_readcolornamefile()</a>
   <li><a href="libppm.html#berlinkay">ppm_name_from_bk_color()</a>
diff --git a/libnetpbm_image.html b/libnetpbm_image.html
index 31ef12a5..f4c0fe81 100644
--- a/libnetpbm_image.html
+++ b/libnetpbm_image.html
@@ -6,7 +6,7 @@
 </HEAD>
 <BODY>
 <H1>Libnetpbm Image Processing Manual</H1>
-Updated: December 2003
+Updated: May 2018
 <br>
 <p><A HREF="#toc">Table Of Contents</A>
 <?makeman .SH NAME ?>
@@ -393,7 +393,6 @@ C library string functions.
 
 <h4>Synopsis</h4>
 
-
 <P>
 <B>void pnm_YCbCrtuple(</B>
 <B>tuple </B><I>tuple</I><B>,</B>
@@ -609,7 +608,93 @@ in PAM visual images and normalizes or unnormalizes the sample values.
 <b>pnm_freegammatransform()</b> and <b>pnm_freeungammatransform()</b>
 destroy the objects.
 
+<h3 id="colorname">Color specification</h3>
+
+<p>These are functions you use that deal with names or identifiers for colors.
+
+<h4>Synopsis</h4>
+
+<P>
+<B>tuple pnm_parsecolor(</B>
+<B>const char * </B><I>colorname</I><b>,</b>
+<b>sample </b><i>maxval</i>
+<B>);</B>
+  
+<P>
+<B>tuple pnm_parsecolor2(</B>
+<B>const char * </B><I>colorname</I><b>,</b>
+<b>sample </b><i>maxval</i><b>,</b>
+<b>int </b><i>closeOk</i>
+<B>);</B>
+  
+<P>
+<B>tuplen pnm_parsecolorn(</B>
+<B>const char * </B><I>colorname</I>
+<B>);</B>
+  
+<h4>Description</h4>
+
+<p><b>pnm_parsecolor</b>, <b>pnm_parsecolor2</b>, and <b>pnm_parsecolorn</b>
+return a color in the conventional form used by <b>libnetpbm</b> to
+represent a color, given a human-intelligible name for the color such
+as &quot;red&quot; or &quot;rgbi:1.0/0.5/0.25&quot;.
+
+<p><b>pnm_parsecolorn</b> returns a normalized tuple (type <b>tuplen</b>),
+whereas <b>pnm_parsecolor</b> and <b>pnm_parsecolor2</b> return a tuple that
+  uses an integer scale with a specified maxval.
+
+<p>When you use an integer scale, only certain discrete colors can be
+represented, so the functions may round.  For example, &quot;wheat&quot; which
+is 245/222/179 with maxval 255, cannot be represented exactly with maxval 15,
+so if you call <b>pnm_parsecolor</b> to produce a wheat color tuple with
+maxval 15, you get 14/13/11, which is not quite the same.
+With <b>pnm_parsecolor2</b>, you get a warning message to Standard Error when
+such rounding occurs, unless you specify <i>closeOk</i> = true.
+<b>pnm_parsecolor</b> never warns about this.
+
+
+<h5>Color name</h5>
+
+<p>The <i>colorname</i> argument is ASCII text in one of these formats:
+
+<ul>
+
+<li>a name, as defined in the <a href="#rgb.txt">system color dictionary
+</a>.
+
+<LI> An X11-style hexadecimal specifier:
+<tt>rgb:<i>r</i>/<i>g</i>/<i>b</i></tt>, where <i>r</i>, <i>g</i>, and
+<i>b</i> are each 1- to 4-digit hexadecimal numbers.  For each, the maxval
+is the maximum number that can be represented in the number of hexadecimal
+digits given.  Example: <tt>rgb:01/ff/8000</tt> specifies 1/255 red
+intensity, maximum green intensity, and about half blue intensity.
+
+<LI> An X11-style decimal specifier:
+<tt>rgbi:<i>r</i>/<i>g</i>/<i>b</i></tt>, where <i>r</i>, <i>g</i>,
+and <i>b</i> are floating point numbers from 0 to 1.  Example:
+<tt>rgbi:1.0/0.5/.25</tt>.
+
+<li><tt>rgb-<i>maxval</i>:<i>r</i>/<i>g</i>/<i>b</i></tt>, where
+<i>r</i>, <i>g</i>, and <i>b</i> are integers from 0 to <i>maxval</i>.
+Example: <tt>rgb-255:255/128/64</tt>.  <i>maxval</i> can be from 1 to 65535.
+<p>
+This format was new in Netpbm 10.83 (June 2018).
+
+<li>an old-X11-style hexadecimal triple: <tt>#rgb</tt>, <tt>#rrggbb</tt>, 
+<tt>#rrrgggbbb</tt>, or <tt>#rrrrggggbbbb</tt>.
+
+<li>A triplet of decimal floating point numbers from 0.0 to 1.0, representing
+red, green, and blue intensities respectively, separated by commas.
+Example: <tt>1.0,0.5,.25</tt>.  This is for backwards compatibility; it was in
+use before MIT came up with the similar and preferred rgbi style).
+
+</ul>
+
+<P>If <i>colorname</i> does not conform to any of these formats, including the
+case that it is a name, but is not in the system color dictionary,
+<B>pnm_parsecolor()</B> <a href="liberror.html">throws an error</a>.
 
+  
 <h3 id="misc">Miscellaneous</h3>
 
 <h4>Synopsis</h4>
@@ -652,6 +737,7 @@ its header).
     <li><a href="#reading">Reading Netpbm Files</a>
     <li><a href="#writing">Writing Netpbm Files</a>
     <li><a href="#transform">Transforming Pixels</a>
+    <li><a href="#colorname">Color Specification</a>
     <li><a href="#misc">Miscellaneous</a>
     </ul>
   </ul>
diff --git a/libppm.html b/libppm.html
index 435eaccc..989fa3ae 100644
--- a/libppm.html
+++ b/libppm.html
@@ -160,6 +160,13 @@ libppm - functions for PPM programs
    <b>pixval</B> <I>maxval</I><B>)</B>
 
 <P>
+<B>pixel ppm_parsecolor2(</B>
+<b>char *</b> <I>colorname</I><B>,</b>
+<b>pixval</B> <I>maxval</I><B>,</B>
+<b>int</B> <I>closeOk</I>
+<B>)</B>
+
+<P>
 <B>char * ppm_colorname(pixel *</B> <I>colorP</I><B>,</b>
   <b>pixval</B> <I>maxval</I><B>,</b>
   <b>int</B> <I>hexok</I><B>)</B>
@@ -491,40 +498,16 @@ color dictionary.
 <H4 id="ppm_parsecolor">ppm_parsecolor</H4>
 
 <p><B>ppm_parsecolor()</B> interprets a color specification and returns a
-pixel of the color that it indicates.  The color specification is
-ASCII text, in one of these formats:
-
-<ul>
-
-<li>a name, as defined in the <a href="#rgb.txt">system color dictionary
-</a>.
+pixel of the color that it indicates.  It is the same as
+<a href="libnetbm_image.html#colorname">pnm_parsecolor</a>, except that it
+returns a <b>pixel</b> instead of a <b>tuple</b>.
 
-<LI> An X11-style hexadecimal specifier:
-<tt>rgb:<i>r</i>/<i>g</i>/<i>b</i></tt>, where <i>r</i>, <i>g</i>, and
-<i>b</i> are each 1- to 4-digit hexadecimal numbers.  For each, the maxval
-is the maximum number that can be represented in the number of hexadecimal
-digits given.  Example: <tt>rgb:01/ff/8000</tt> specifies 1/255 red
-intensity, maximum green intensity, and about half blue intensity.
-
-<LI> An X11-style decimal specifier:
-<tt>rgbi:<i>r</i>/<i>g</i>/<i>b</i></tt>, where <i>r</i>, <i>g</i>,
-and <i>b</i> are floating point numbers from 0 to 1.  Example:
-<tt>rgbi:1.0/0.5/.25</tt>.
-
-<li>an old-X11-style hexadecimal triple: <tt>#rgb</tt>, <tt>#rrggbb</tt>, 
-<tt>#rrrgggbbb</tt>, or <tt>#rrrrggggbbbb</tt>.
-
-<li>A triplet of decimal floating point numbers from 0.0 to 1.0, representing
-red, green, and blue intensities respectively, separated by commas.
-Example: <tt>1.0,0.5,.25</tt>.  This is for backwards compatibility; it was in
-use before MIT came up with the similar and preferred rgbi style).
-
-</ul>
+<H4 id="ppm_parsecolor2">ppm_parsecolor2</H4>
 
-<P>If the color specification does not conform to any of these
-formats, including the case that it is a name, but is not in the
-system color dictionary, <B>ppm_parsecolor()</B> <a
-href="liberror.html">throws an error</a>.
+<p><B>ppm_parsecolor2()</B> interprets a color specification and returns a
+pixel of the color that it indicates and warns about rounding.  It is the same
+as <a href="libnetbm_image.html#colorname">pnm_parsecolor2</a>, except
+that it returns a <b>pixel</b> instead of a <b>tuple</b>.
 
 <h4 id="ppm_colorname">ppm_colorname</h4>
 
@@ -805,6 +788,7 @@ Copyright (C) 1989, 1991 by Tony Hansen and Jef Poskanzer.
     <ul>
     <li><a href="#dictionary">System Color Dictionary</a>
     <li><a href="#ppm_parsecolor">ppm_parsecolor</a>
+    <li><a href="#ppm_parsecolor2">ppm_parsecolor2</a>
     <li><a href="#ppm_colorname">ppm_colorname</a>
     <li><a href="#ppm_readcolornamefile">ppm_readcolornamefile</a>
     </ul>
diff --git a/pamgradient.html b/pamgradient.html
index 63f66215..e2bcc7b5 100644
--- a/pamgradient.html
+++ b/pamgradient.html
@@ -36,7 +36,7 @@ two-dimensional gradient between the specified colors of the four
 corners (from top left to bottom right).
 
 <P>Specify the colors as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 
diff --git a/pamlookup.html b/pamlookup.html
index 0f4e1177..1dcd593d 100644
--- a/pamlookup.html
+++ b/pamlookup.html
@@ -244,7 +244,7 @@ uses the value from the top left corner of the lookup image whenever
 an index exceeds the dimensions of the lookup image.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <P>Another way to deal with a too-small lookup image is to use the 
diff --git a/pampaintspill.html b/pampaintspill.html
index c71db552..e54afcec 100644
--- a/pampaintspill.html
+++ b/pampaintspill.html
@@ -61,7 +61,7 @@ paintbrush or airbrush tool &mdash; with a small nib.</p>
   <dt><b>--bgcolor</b>=<i>color</i></dt>
   <dd>Explicitly specify the background color. <i>color</i> can be
       specified using any of the formats accepted by the <a
-      href="libppm.html#colorname"><code>ppm_parsecolor()</code> library
+      href="libnetpbm_image.html#colorname"><code>pnm_parsecolor()</code> library
       routine</a> such as <code>red</code> or <code>#ff0000</code>.  If
       <b>--bgcolor</b> is not specified, <b>pampaintspill</b> makes an
       educated guess about the background color based on the colors in the
diff --git a/pamrecolor.html b/pamrecolor.html
index b06536b1..6acc05be 100644
--- a/pamrecolor.html
+++ b/pamrecolor.html
@@ -137,7 +137,7 @@ the ProPhoto (ROMM) RGB color space with
 image.  <b>pamrecolor</b> will make each pixel as close as possible
 to <i>color</i> subject to the constraint that the luminance must stay the
 same as in the original image.  Specify <i>color</i> as in
-the <a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+the <a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a> (e.g.,&nbsp;"hotpink" or "#ff69b4").
 
 <p>If you specify neither <b>--targetcolor</b> nor
diff --git a/pamstereogram.html b/pamstereogram.html
index 4193a0dd..d0c5ccf4 100644
--- a/pamstereogram.html
+++ b/pamstereogram.html
@@ -157,7 +157,7 @@ blending colors.
 <dd>Use <i>color</i> as the texture image's background color instead
 of letting <b>pamstereogram</b> determine it automatically.  Specify
 the color as described for the
-<a href="libppm.html#colorname">argument of the ppm_parsecolor() library
+<a href="libnetpbm_image.html#colorname">argument of the pnm_parsecolor() library
 routine</a>.  The <b>-bgcolor</b> option is meaningful only in conjunction
 with <b>-texfile</b>.
 
diff --git a/pamtodjvurle.html b/pamtodjvurle.html
index adeafb3e..8828fcb2 100644
--- a/pamtodjvurle.html
+++ b/pamtodjvurle.html
@@ -35,7 +35,7 @@ PNM) as input and produces DjVu Color RLE format as output.
 considered transparent.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>Default is "white".
diff --git a/pamtogif.html b/pamtogif.html
index 4e2abce3..2c761968 100644
--- a/pamtogif.html
+++ b/pamtogif.html
@@ -158,7 +158,7 @@ mark any color transparent (except as indicated by the transparency
 information in the input file).
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>If the color you specify is not present in the image, <B>pamtogif</B>
@@ -218,7 +218,7 @@ color.  (There is only one entry in the GIF colormap for transparent
 pixels).
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <DT><B>-comment=</B><I>text</I>
diff --git a/pamtohtmltbl.html b/pamtohtmltbl.html
index 82d53c23..cae34fcc 100644
--- a/pamtohtmltbl.html
+++ b/pamtohtmltbl.html
@@ -55,7 +55,7 @@ in the HTML table.  The table cell for a pixel of this color will have no
 background color specified.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 
diff --git a/pamtopng.html b/pamtopng.html
index cc7130f4..33b529a7 100644
--- a/pamtopng.html
+++ b/pamtopng.html
@@ -129,7 +129,7 @@ of the option value to conform to the rest of Netpbm.
 <dd>
 <b>pamtopng</b> marks the specified color as transparent in the PNG image.
 <P>Specify the color (<i>color</i>) as described for
-the <a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+the <a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.  E.g. <B>red</B> or <B>rgb:ff/00/0d</B>.
 
 <dt><b>-background=</b><i>color</i>
diff --git a/pamtosvg.html b/pamtosvg.html
index cbb1b42d..81a09353 100644
--- a/pamtosvg.html
+++ b/pamtosvg.html
@@ -87,7 +87,7 @@ SVG web page</a>.
 any background color.
 
 <P>Specify the color (<i>colorname</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <dt><b>-centerline</b>
diff --git a/pgmtoppm.html b/pgmtoppm.html
index 01925ad3..41638be5 100644
--- a/pgmtoppm.html
+++ b/pgmtoppm.html
@@ -44,7 +44,7 @@ second and gray values in between get mapped linearly (across a three
 dimensional space) to colors in between.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>Also, you can specify an entire colormap with the <B>-map</B>
diff --git a/pngtopam.html b/pngtopam.html
index 86f85b9d..47d82cd7 100644
--- a/pngtopam.html
+++ b/pngtopam.html
@@ -102,7 +102,7 @@ This option specifies the background color with which to mix the image
 when you specify <b>-mix</b>.  
 
 <P><i>color</i> is as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>Examples:
diff --git a/pnmalias.html b/pnmalias.html
index 7fa9f297..a527dcf1 100644
--- a/pnmalias.html
+++ b/pnmalias.html
@@ -52,7 +52,7 @@ PGM, and prints a message informing the user of the change in format.
 color to be white.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <P>Note that even when dealing with PGMs, background and foreground
diff --git a/pnmmargin.html b/pnmmargin.html
index 34b98f45..2860621f 100644
--- a/pnmmargin.html
+++ b/pnmmargin.html
@@ -36,7 +36,7 @@ argument, <b>pnmmargin</b> reads the input image from its Standard Input.
 program makes a guess.
 
 <p>The value of <b>-color</b> is like the
-<a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+<a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <P>To remove a border of a specified size from an image, use
diff --git a/pnmremap.html b/pnmremap.html
index 40372588..7548ad48 100644
--- a/pnmremap.html
+++ b/pnmremap.html
@@ -281,7 +281,7 @@ or may not be in the palette image; it is part of the palette
 regardless.
 
 <P><i>colorspec</i> is as described for
-the <a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+the <a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <P>If you specify <B>-missingcolor</B>, the maxval of your input must
diff --git a/pnmrotate.html b/pnmrotate.html
index 04d9aa6e..955a1d94 100644
--- a/pnmrotate.html
+++ b/pnmrotate.html
@@ -79,7 +79,7 @@ value.
 sits.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>By default, if you don't specify this option, <b>pnmrotate</b> selects
diff --git a/pnmshear.html b/pnmshear.html
index d6a95825..4ff36304 100644
--- a/pnmshear.html
+++ b/pnmshear.html
@@ -69,7 +69,7 @@ problem, you can run the result through <b>pnmquant</b>.
 sits.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>By default, if you don't specify this option, <b>pnmshear</b> selects
diff --git a/pnmtopalm.html b/pnmtopalm.html
index b6501fd0..d9279077 100644
--- a/pnmtopalm.html
+++ b/pnmtopalm.html
@@ -203,7 +203,7 @@ uses the default Palm colormap for color output.
 Marks <EM>one</EM> particular color as fully transparent.
 
 <p><i>colorspec</i> is as described for the
-<a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+<a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.  
 
 <p>Transparency works only on Palm OS 3.5 and higher.
diff --git a/pnmtopng.html b/pnmtopng.html
index 4f397b5b..d2f07a68 100644
--- a/pnmtopng.html
+++ b/pnmtopng.html
@@ -159,7 +159,7 @@ from the transparency part of the palette and save space for the palette.
 <B>pnmtopng</B> marks the specified color as transparent in the PNG image.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 E.g. <B>red</B> or
 <B>rgb:ff/00/0d</B>.  If the color you specify is not present in the
diff --git a/ppmchange.html b/ppmchange.html
index 2942da14..b8927ec9 100644
--- a/ppmchange.html
+++ b/ppmchange.html
@@ -47,7 +47,7 @@ changed to the single specified color.
 you specify get replaced by specifying a "closeness" factor.
 
 <P>Specify the colors as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <P>If a pixel matches two different <I>oldcolor</I>s, <B>ppmchange</B>
diff --git a/ppmcolormask.html b/ppmcolormask.html
index 1337d953..00e9b660 100644
--- a/ppmcolormask.html
+++ b/ppmcolormask.html
@@ -84,7 +84,7 @@ what color it is, use <b>pambackground</b>.
 
 <p><i>color_list</i> is a list of colors separated by commas.  Each
 color is either an exact color name as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a> or one of the <a
 href="libppm.html#berlinkay">Berlin-Kay color names</a>.  In the
 latter case, all colors that are better described by that Berlin-Kay
diff --git a/ppmdraw.html b/ppmdraw.html
index 4b862108..afef2927 100644
--- a/ppmdraw.html
+++ b/ppmdraw.html
@@ -151,7 +151,7 @@ in which subsequent drawing commands draw.  Before the first
 <b>setcolor</b>, the current color is white.
 
 <P>There is one argument.  It specifies the color as described for the
-<a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+<a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <dt>setfont
diff --git a/ppmglobe.html b/ppmglobe.html
index ab87b8ac..1da16723 100644
--- a/ppmglobe.html
+++ b/ppmglobe.html
@@ -93,7 +93,7 @@ specify this, <b>ppmglobe</b> reads the image from Standard Input.
 This specifies the color that goes between the strips.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>The default is black.
diff --git a/ppmlabel.html b/ppmlabel.html
index a1494917..fae32e89 100644
--- a/ppmlabel.html
+++ b/ppmlabel.html
@@ -104,7 +104,7 @@ color.
 <DD>This option sets the color for subsequent text.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p><b>-colour</b> is an acceptable alternate spelling.
diff --git a/ppmmake.html b/ppmmake.html
index f60859ab..09fb9dcf 100644
--- a/ppmmake.html
+++ b/ppmmake.html
@@ -6,12 +6,10 @@ Updated: 02 September 2002
 <BR>
 <A HREF="#index">Table Of Contents</A>
 
-<A NAME="lbAB">&nbsp;</A>
 <H2>NAME</H2>
 ppmmake - create a PPM image of a specified color and dimensions
 
-<A NAME="lbAC">&nbsp;</A>
-<H2>SYNOPSIS</H2>
+<H2 id="synopsis">SYNOPSIS</H2>
 
 <B>ppmmake</B>
 [<b>-maxval=</b><i>maxval</i>]
@@ -25,8 +23,7 @@ may use either white space or an equals sign between an option name
 and its value.
 
 
-<A NAME="lbAD">&nbsp;</A>
-<H2>DESCRIPTION</H2>
+<H2 id="description">DESCRIPTION</H2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -34,12 +31,11 @@ and its value.
 height, and maxval.
 
 <P>Specify the color (<i>color</i>) as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 
-<A NAME="example">&nbsp;</a>
-<h2>EXAMPLES</H2>
+<h2 id="example">EXAMPLES</H2>
 
 <pre>
     ppmmake red 50 50
@@ -49,8 +45,7 @@ library routine</a>.
 </pre>
 
 
-<A NAME="options">&nbsp;</A>
-<H2>OPTIONS</H2>
+<H2 id="options">OPTIONS</H2>
 
 <DL>
 <DT><b>-maxval=</b><i>maxval</i>
@@ -61,29 +56,25 @@ library routine</a>.
      always 255.
 </DL>
 
-<A NAME="lbAE">&nbsp;</A>
-<H2>SEE ALSO</H2>
+<H2 id="seealso">SEE ALSO</H2>
 
 <A HREF="pbmmake.html">pbmmake</A>,
 <A HREF="pgmmake.html">pgmmake</A>,
 <A HREF="ppmpat.html">ppmpat</A>,
 <A HREF="ppm.html">ppm</A>
 
-<A NAME="lbAF">&nbsp;</A>
-<H2>AUTHOR</H2>
+<H2 id="author">AUTHOR</H2>
 
 Copyright (C) 1991 by Jef Poskanzer.
 
 <HR>
-<A NAME="index">&nbsp;</A>
-<H2>Table Of Contents</H2>
+<H2 id="index">Table Of Contents</H2>
 <UL>
-<LI><A HREF="#lbAB">NAME</A>
-<LI><A HREF="#lbAC">SYNOPSIS</A>
-<LI><A HREF="#lbAD">DESCRIPTION</A>
+<LI><A HREF="#synopsis">SYNOPSIS</A>
+<LI><A HREF="#description">DESCRIPTION</A>
 <LI><A HREF="#example">EXAMPLES</A>
 <LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#lbAF">AUTHOR</A>
+<LI><A HREF="#author">AUTHOR</A>
 </UL>
 </BODY>
 </HTML>
diff --git a/ppmpat.html b/ppmpat.html
index 443cd264..4981a0cd 100644
--- a/ppmpat.html
+++ b/ppmpat.html
@@ -140,7 +140,7 @@ to specify.
 
 <p><i>colorlist</i> is a comma-separated list of colors.
 <P>Specify each color as described for the <a
-href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 <p>Example: <b>-color red, green, rgbi:1.0/0.5/.25</b> .
diff --git a/ppmrainbow.html b/ppmrainbow.html
index f93a431d..b95b4d9b 100644
--- a/ppmrainbow.html
+++ b/ppmrainbow.html
@@ -51,7 +51,7 @@ specify the <b>-norepeat</b> option.  This means you can concatenate multiple
 copies (tile, as with <b>pnmtile</b>) to make a continuous larger image.
 
 <P><i>color</i> is as described for
-the <a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
+the <a href="libnetpbm_image.html#colorname">argument of the <b>pnm_parsecolor()</b>
 library routine</a>.
 
 
diff --git a/ppmrough.html b/ppmrough.html
index 4e2d3fb9..52555590 100644
--- a/ppmrough.html
+++ b/ppmrough.html
@@ -114,14 +114,14 @@ transparency mask and use it to roughen up the edges of another image.
 <DT><B>-bg=</B><I>colorspec</I>
 
 <DD>Background color.  <i>colorspec</i> is as described for the
-<a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
-library routine</a>.  Default is black.
+<a href="libnetpbm_image.html#colorname">argument of the
+<b>pnm_parsecolor()</b> library routine</a>.  Default is black.
 
 <DT><B>-fg=</B><I>color</I>
 
 <DD>Foreground color.  <i>colorspec</i> is as described for the
-<a href="libppm.html#colorname">argument of the <b>ppm_parsecolor()</b>
-library routine</a>.  Default is white.
+<a href="libnetpbm_image.html#colorname">argument of the
+<b>pnm_parsecolor()</b> library routine</a>.  Default is white.
 
 <DT><B>-var=</B><I>pixels</I>