summary refs log tree commit diff
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2020-07-26 21:43:12 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2020-07-26 21:43:12 +0000
commit1a29632fcc0b7c095f116ad9a760acc80a7b0472 (patch)
tree17fec5ed1778a7b800faeb32a3efb0f3934ae98e
parentfabc39e7f3bf78fbbc4e2923a0b9e53a829a9a26 (diff)
downloadnetpbm-mirror-1a29632fcc0b7c095f116ad9a760acc80a7b0472.tar.gz
netpbm-mirror-1a29632fcc0b7c095f116ad9a760acc80a7b0472.tar.xz
netpbm-mirror-1a29632fcc0b7c095f116ad9a760acc80a7b0472.zip
miscellaneous update
git-svn-id: http://svn.code.sf.net/p/netpbm/code/userguide@3901 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r--anytopnm.html6
-rw-r--r--extendedopacity.html4
-rw-r--r--hpcdtoppm.html468
-rw-r--r--icontopbm.html30
-rw-r--r--jbigtopnm.html115
-rw-r--r--jpegtopnm.html296
-rw-r--r--mrf.html2
-rw-r--r--pam.html201
-rw-r--r--pamarith.html218
-rw-r--r--pamfix.html91
-rwxr-xr-xpammixmulti.html66
-rw-r--r--pampaintspill.html5
-rw-r--r--pamrgbatopng.html29
-rw-r--r--pamshadedrelief.html108
-rw-r--r--pamsplit.html103
-rw-r--r--pamstereogram.html230
-rw-r--r--pamsumm.html93
-rw-r--r--pamtable.html75
-rw-r--r--pamtompfont.html57
-rw-r--r--pamtooctaveimg.html2
-rw-r--r--pamtotiff.html230
-rw-r--r--pamvalidate.html58
-rw-r--r--pbmmake.html81
-rw-r--r--pbmtog3.html7
-rw-r--r--pbmtogem.html2
-rw-r--r--pbmtoicon.html30
-rw-r--r--pbmtoppa.html4
-rw-r--r--pgmdeshadow.html65
-rw-r--r--pgmramp.html104
-rw-r--r--pngtopnm.html34
-rw-r--r--pnmalias.html97
-rw-r--r--pnmcolormap.html193
-rw-r--r--pnmcomp.html23
-rw-r--r--pnmnorm.html178
-rw-r--r--pnmpad.html5
-rw-r--r--pnmpaste.html99
-rw-r--r--pnmquantall.html12
-rw-r--r--pnmscale.html20
-rw-r--r--pnmtojbig.html21
-rw-r--r--pnmtojpeg.html391
-rw-r--r--pnmtopng.html190
-rw-r--r--ppmquantall.html24
-rw-r--r--ppmshadow.html8
-rw-r--r--ppmtoilbm.html193
-rw-r--r--ppmtomitsu.html6
-rw-r--r--ppmtoterm.html87
-rw-r--r--rletopnm.html2
-rw-r--r--tifftopnm.html212
-rw-r--r--winicon.html6
49 files changed, 2386 insertions, 2195 deletions
diff --git a/anytopnm.html b/anytopnm.html
index a0b1b80f..91f601ce 100644
--- a/anytopnm.html
+++ b/anytopnm.html
@@ -67,9 +67,11 @@ earlier releases.
 <h2 id="options">OPTIONS</h2>
 
 <p>There are no command line options defined specifically
-for <b>anytopnm</b>, but it recognizes the options common to all
+for <b>anytopnm</b>.
+
+<b>anytopnm</b> does not recognize the options common to all
 programs based on libnetpbm (See <a href="index.html#commonoptions">
-Common Options</a>.)
+Common Options</a>.)  However, the <b>-version</b> option works.
 
 <h2 id="seealso">SEE ALSO</h2>
 
diff --git a/extendedopacity.html b/extendedopacity.html
index 4205cd8c..09a50858 100644
--- a/extendedopacity.html
+++ b/extendedopacity.html
@@ -131,7 +131,7 @@ an image by continuously changing a single parameter.
 The best hardware mechanisms employ a
 single "inner loop" to achieve a wide variety of effects.  Interpolation
 and extrapolation of images can be a unifying approach, providing a single
-function that supports many common image processing operations.
+function that can do many common image processing operations.
 <p>
 Since a degenerate image is sometimes easier to calculate, extrapolation
 may offer a more efficient method to achieve effects such as sharpening
@@ -142,7 +142,7 @@ inaccuracy.
 <p>
 These image manipulation techniques can be used in paint programs to
 easily implement brushes that saturate, sharpen, lighten, darken,
-or modify contrast and color.  The only major change needed is to support
+or modify contrast and color.  The only major change needed is to work with
 alpha values outside the range 0.0 to 1.0.
 <p>
 It is surprising and unfortunate how many graphics software packages
diff --git a/hpcdtoppm.html b/hpcdtoppm.html
index f28d5556..9e3dcd12 100644
--- a/hpcdtoppm.html
+++ b/hpcdtoppm.html
@@ -1,80 +1,79 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Hpcdtoppm User Manual</TITLE></HEAD>
-<BODY>
-<H1>hpcdtoppm</H1>
-Updated: 7 August 2003
-<BR>
-
-<A HREF="#index">Table Of Contents</A>
-
-<H2>NAME</H2>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Hpcdtoppm User Manual</title></head>
+<body>
+<h1>hpcdtoppm</h1>
+Updated: 07 August 2003
+<br>
+<a href="#index">Table Of Contents</a>
+
+<h2>NAME</h2>
 hpcdtoppm - convert a Photo-CD image into a PBM image
 
-<H2 id="synopsis">SYNOPSIS</H2>
-
-<B>hpcdtoppm</B>
-<I>infile</I>
-[<B>-a</B>]
-[{<B>-C</B>|<B>-0</B>|<B>-Overview</B>|<B>-O</B>} <I>file opt</I>]
-[<B>-c0</B>]
-[<B>-c-</B>]
-[<B>-c+</B>]
-[<B>-crop</B>]
-[<B>-d</B>]
-[<B>-dpi</B> <I>f</I>]
-[<B>-eps</B>]
-[<B>-epsd</B>]
-[<B>-epsg</B>]
-[<B>-fak</B> <I>scale</I>]
-[<B>-hori</B>]
-[<B>-i</B>]
-[<B>-l</B>]
-[<B>-m</B>]
-[<B>-n</B>]
-[<B>-pb</B> <I>pos</I>]
-[<B>-pgm</B>]
-[<B>-ph</B> <I>height</I>]
-[<B>-pl</B> <I>pos</I>]
-[<B>-pos</B>]
-[<B>-ppm</B>]
-[<B>-ps</B>]
-[<B>-psd</B>]
-[<B>-psg</B>]
-[<B>-pw</B> <I>width</I>]
-[<B>-r</B>]
-[<B>-rep</B>]
-[<B>-S</B> <I>long short</I>]
-[<B>-s</B>]
-[<B>-vert</B>]
-[<B>-x</B>]
-[<B>-ycc</B>]
-[<B>-1</B>|<B>-Base/16</B>|<B>-128x192</B>]
-[<B>-2</B>|<B>-Base/4</B>|<B>-256x384</B>]
-[<B>-3</B>|<B>-Base</B>|<B>-512x768</B>]
-[<B>-4</B>|<B>-4Base</B>|<B>-1024x1536</B>]
-[<B>-5</B>|<B>-16Base</B>|<B>-2048x3072</B>]
-[<B>-6</B>|<B>-64Base</B>|<B>-4096x6144</B>]
-[<I>outfile</I>]
-
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
+
+<b>hpcdtoppm</b>
+<i>infile</i>
+[<b>-a</b>]
+[{<b>-C</b>|<b>-0</b>|<b>-Overview</b>|<b>-O</b>} <i>file opt</i>]
+[<b>-c0</b>]
+[<b>-c-</b>]
+[<b>-c+</b>]
+[<b>-crop</b>]
+[<b>-d</b>]
+[<b>-dpi</b> <i>f</i>]
+[<b>-eps</b>]
+[<b>-epsd</b>]
+[<b>-epsg</b>]
+[<b>-fak</b> <i>scale</i>]
+[<b>-hori</b>]
+[<b>-i</b>]
+[<b>-l</b>]
+[<b>-m</b>]
+[<b>-n</b>]
+[<b>-pb</b> <i>pos</i>]
+[<b>-pgm</b>]
+[<b>-ph</b> <i>height</i>]
+[<b>-pl</b> <i>pos</i>]
+[<b>-pos</b>]
+[<b>-ppm</b>]
+[<b>-ps</b>]
+[<b>-psd</b>]
+[<b>-psg</b>]
+[<b>-pw</b> <i>width</i>]
+[<b>-r</b>]
+[<b>-rep</b>]
+[<b>-S</b> <i>long short</i>]
+[<b>-s</b>]
+[<b>-vert</b>]
+[<b>-x</b>]
+[<b>-ycc</b>]
+[<b>-1</b>|<b>-Base/16</b>|<b>-128x192</b>]
+[<b>-2</b>|<b>-Base/4</b>|<b>-256x384</b>]
+[<b>-3</b>|<b>-Base</b>|<b>-512x768</b>]
+[<b>-4</b>|<b>-4Base</b>|<b>-1024x1536</b>]
+[<b>-5</b>|<b>-16Base</b>|<b>-2048x3072</b>]
+[<b>-6</b>|<b>-64Base</b>|<b>-4096x6144</b>]
+[<i>outfile</i>]
+
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
 <p>This program accepts Photo-CD image or overview file data from the
-specified input file, <I>infile</I> (or, if the resolution is lower
-than 64Base and the file argument is specified as <B>-</B>, from
+specified input file, <i>infile</i> (or, if the resolution is lower
+than 64Base and the file argument is specified as <b>-</b>, from
 standard input), and writes either PBM Format or PostScript to the
 specified output file (or to standard output if no file is specified).
 
-<P>On a standard Photo-CD, image files appear in the directory
+<p>On a standard Photo-CD, image files appear in the directory
 <b>photo_cd/images</b>, in files with names of the form
-img<I>nnnn</i>.pcd, where <I>nnnn</I> is a 4-digit-number.  The
-overview file appears in <B>photo_cd/overview.pcd</B>.
+img<i>nnnn</i>.pcd, where <i>nnnn</i> is a 4-digit-number.  The
+overview file appears in <b>photo_cd/overview.pcd</b>.
 
-<P>Photo-CD images are stored using as many as 6 different resolutions:
+<p>Photo-CD images are stored using as many as 6 different resolutions:
 
 
-<PRE>
+<pre>
           Format              Resolution
           ------              ----------
           64Base              4096x6144 (ProPhotoCD only)
@@ -83,309 +82,314 @@ overview file appears in <B>photo_cd/overview.pcd</B>.
           Base                512x768
           Base/4              256x384
           Base/16             128x192
-</PRE>
+</pre>
 
-<P>The overview file employs Base/16 format.
+<p>The overview file employs Base/16 format.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
 Invoking <b>hpcdtoppm</b> without arguments produces a list of default
 values.  Note that you can supply only one size option.
 
-<DL COMPACT>
-<DT><B>-a</B>
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>hpcdtoppm</b> recognizes the following
+command line options:
+
+<dl compact>
+<dt><b>-a</b>
 
-<DD>Automatically determine image orientation (this option is
+<dd>Automatically determine image orientation (this option is
 experimental, and does not work for overview files).
 
-<DT>{<B>-C</B> | <B>-0</B> | <B>-Overview</B> | <B>-O</B> } <I>file opt</I>
+<dt>{<b>-C</b> | <b>-0</b> | <b>-Overview</b> | <b>-O</b> } <i>file opt</i>
 
-<DD>Extract all images from an overview file.  The mandatory
-<I>file</I> argument is the name of a PPM file; output files are named
-<i>filennnn</I>, where <I>nnnn</I> is a 4-digit number.  Overview
+<dd>Extract all images from an overview file.  The mandatory
+<i>file</i> argument is the name of a PPM file; output files are named
+<i>filennnn</i>, where <i>nnnn</i> is a 4-digit number.  Overview
 images are extracted in their original Base/16 format.  The value of
-<I>opt</I> determines the orientation of the contact sheet image;
+<i>opt</i> determines the orientation of the contact sheet image;
 recognized values are:
 
-<DL COMPACT>
-<DT><B>n</B>
+<dl compact>
+<dt><b>n</b>
 
-<DD>Do not rotate the image.
+<dd>Do not rotate the image.
 
-<DT><B>l</B>
+<dt><b>l</b>
 
-<DD>Rotate the picture counter-clockwise (portrait mode).
+<dd>Rotate the picture counter-clockwise (portrait mode).
 
-<DT><B>r</B>
+<dt><b>r</b>
 
-<DD>Rotate the picture clockwise (portrait mode).
+<dd>Rotate the picture clockwise (portrait mode).
 
-</DL>
+</dl>
 
-<DT><B>-c0</B>
+<dt><b>-c0</b>
 
-<DD>Do not correct (brighten or darken) the image.
+<dd>Do not correct (brighten or darken) the image.
 
-<DT><B>-c-</B>
+<dt><b>-c-</b>
 
-<DD>Darken the image.
+<dd>Darken the image.
 
-<DT><B>-c+</B>
+<dt><b>-c+</b>
 
-<DD>Brighten the image.
+<dd>Brighten the image.
 
-<DT><B>-crop</B>
+<dt><b>-crop</b>
 
-<DD>Cut off the black frame which sometimes appears at the image
+<dd>Cut off the black frame which sometimes appears at the image
 borders.
 
-<DT><B>-d</B>
+<dt><b>-d</b>
 
-<DD>Show only the decompressed difference rather than the complete image
+<dd>Show only the decompressed difference rather than the complete image
 (applicable only to 4Base and 16Base images).
 
-<DT><B>-dpi</b> <i>res</i>
+<dt><b>-dpi</b> <i>res</i>
 
-<DD>Set the printer resolution to <I>res</I> for dithered Postscript
+<dd>Set the printer resolution to <i>res</i> for dithered Postscript
 images.
 
-<DT><B>-eps</B>
+<dt><b>-eps</b>
 
-<DD>Write a RGB Encapsulated Postscript color image.
+<dd>Write a RGB Encapsulated Postscript color image.
 
-<DT><B>-epsd</B>
+<dt><b>-epsd</b>
 
-<DD>Write a Floyd-Steinberg dithered image in Encapsulated Postscript.
+<dd>Write a Floyd-Steinberg dithered image in Encapsulated Postscript.
 
-<DT><B>-epsg</B>
+<dt><b>-epsg</b>
 
-<DD>Write a grayscale image in Encapsulated Postscript.
+<dd>Write a grayscale image in Encapsulated Postscript.
 
-<DT><B>-fak</b> <i>scale</i>
+<dt><b>-fak</b> <i>scale</i>
 
-<DD>Set the scaling factor for dithered PostScript images to
-<I>scale</I>.
+<dd>Set the scaling factor for dithered PostScript images to
+<i>scale</i>.
 
-<DT><B>-hori</B>
+<dt><b>-hori</b>
 
-<DD>Flip the image horizontally.
+<dd>Flip the image horizontally.
 
-<DT><B>-i</B>
+<dt><b>-i</b>
 
-<DD>Send information from an image file header to Standard Error.
+<dd>Send information from an image file header to Standard Error.
 
-<DT><B>-l</B>
+<dt><b>-l</b>
 
-<DD>Rotate the picture counter-clockwise (portrait mode).
+<dd>Rotate the picture counter-clockwise (portrait mode).
 
-<DT><B>-m</B>
+<dt><b>-m</b>
 
-<DD>Write messages about the phases of decoding to standard error.
+<dd>Write messages about the phases of decoding to standard error.
 
-<DT><B>-n</B>
+<dt><b>-n</b>
 
-<DD>Do not rotate the image.
+<dd>Do not rotate the image.
 
-<DT><B>-pb</b> <i>pos</i>
+<dt><b>-pb</b> <i>pos</i>
 
-<DD>Set the bottom position of the Postscript image to <I>pos</I>.
+<dd>Set the bottom position of the Postscript image to <i>pos</i>.
 
-<DT><B>-pgm</B>
+<dt><b>-pgm</b>
 
-<DD>Write a <I>pgm</I> (grayscale) image.
+<dd>Write a <i>pgm</i> (grayscale) image.
 
-<DT><B>-ph height</B>
+<dt><b>-ph height</b>
 
-<DD>Set the height of the Postscript image to <I>height</I>.
+<dd>Set the height of the Postscript image to <i>height</i>.
 
-<DT><B>-pl</b> <i>pos</i>
+<dt><b>-pl</b> <i>pos</i>
 
-<DD>Set the leftmost position of the Postscript image to <I>pos</I>.
+<dd>Set the leftmost position of the Postscript image to <i>pos</i>.
 
-<DT><B>-pos</B>
+<dt><b>-pos</b>
 
-<DD>Print the relative starting position of the data for the current
+<dd>Print the relative starting position of the data for the current
 resolution.  
 
-<DT><B>-ppm</B>
+<dt><b>-ppm</b>
 
-<DD>Write a <I>ppm</I> RGB (color) image.
+<dd>Write a <i>ppm</i> RGB (color) image.
 
-<DT><B>-ps</B>
+<dt><b>-ps</b>
 
-<DD>Write a RGB Postscript color image.
+<dd>Write a RGB Postscript color image.
 
-<DT><B>-psd</B>
+<dt><b>-psd</b>
 
-<DD>Write a Floyd-Steinberg dithered image in Postscript.
+<dd>Write a Floyd-Steinberg dithered image in Postscript.
 
-<DT><B>-psg</B>
+<dt><b>-psg</b>
 
-<DD>Write a Postscript grayscale image.
+<dd>Write a Postscript grayscale image.
 
-<DT><B>-pw width</B>
+<dt><b>-pw width</b>
 
-<DD>Set the width of the Postscript image to <I>width</I>.
+<dd>Set the width of the Postscript image to <i>width</i>.
 
-<DT><B>-r</B>
+<dt><b>-r</b>
 
-<DD>Rotate the picture clockwise (portrait mode).
+<dd>Rotate the picture clockwise (portrait mode).
 
-<DT><B>-rep</B>
+<dt><b>-rep</b>
 
-<DD>Try to jump over reading errors in the Huffman code. 
+<dd>Try to jump over reading errors in the Huffman code. 
 
-<DT><B>-S</b> <i>long</i> <i>short</i>
+<dt><b>-S</b> <i>long</i> <i>short</i>
 
-<DD>Cut out a subrectangle with boundaries defined by the values:
+<dd>Cut out a subrectangle with boundaries defined by the values:
 
-<DL COMPACT>
-<DT><I>long</I>
+<dl compact>
+<dt><i>long</i>
 
-<DD>For the longer side of the image.
+<dd>For the longer side of the image.
 
-<DT><I>short</I>
+<dt><i>short</i>
 
-<DD>For the shorter side of the image.
+<dd>For the shorter side of the image.
 
-</DL>
+</dl>
 
-where <I>long</I> and <I>short</I> take one of two forms:
+where <i>long</i> and <i>short</i> take one of two forms:
 
-<DL COMPACT>
-<DT><B>a-b</B>
+<dl compact>
+<dt><b>a-b</b>
 
-<DD>Cut from position <I>a</I> to position <I>b</I>.
+<dd>Cut from position <i>a</i> to position <i>b</i>.
 
-<DT><B>a+b</B>
+<dt><b>a+b</b>
 
-<DD>Starting at offset <I>a</I>, cut a length of <I>b</I>.
+<dd>Starting at offset <i>a</i>, cut a length of <i>b</i>.
 
-</DL>
+</dl>
 
-and where <I>a</I> and <I>b</I> are either integers representing pixel
+and where <i>a</i> and <i>b</i> are either integers representing pixel
 locations, or floating point values over the range [0.0 ... 1.0],
 representing the fraction of the length of a side.
 
-<DT><B>-s</B>
+<dt><b>-s</b>
 
-<DD>Apply a simple sharpness operator to the luminosity channel.
+<dd>Apply a simple sharpness operator to the luminosity channel.
 
-<DT><B>-vert</B>
+<dt><b>-vert</b>
 
-<DD>Flip the image vertically.
+<dd>Flip the image vertically.
 
-<DT><B>-x</B>
+<dt><b>-x</b>
 
-<DD> Overskip Mode (applicable to Base/16, Base/4, Base and 4Base).
+<dd> Overskip Mode (applicable to Base/16, Base/4, Base and 4Base).
 In Photo-CD images the luminosity channel is stored in full
 resolution, the two chromaticity channels are stored in half
 resolution only and have to be interpolated.  In Overskip Mode, the
 chromaticity channels of the next higher resolution are taken instead
 of interpolating.  To see the difference, generate one PPM with and
-one PPM without this option.  Use <B><A
-HREF="pamarith.html">pamarith</A></B> to generate the difference image
-of these two images.  Call <B><A HREF="ppmhist.html">ppmhist</A></B>
-for this difference or show it with <b>xv</b> (push the <B>HistEq</B> button
+one PPM without this option.  Use <b><a
+href="pamarith.html">pamarith</a></b> to generate the difference image
+of these two images.  Call <b><a href="ppmhist.html">ppmhist</a></b>
+for this difference or show it with <b>xv</b> (push the <b>HistEq</b> button
 in the color editor).
 
-<DT><B>-ycc</B>
+<dt><b>-ycc</b>
 
-<DD>Write the image in a variation on PPM format in which the samples
+<dd>Write the image in a variation on PPM format in which the samples
 are YCC instead of RGB.
 
-<DT><B>-1</B>|<B>-Base/16</B>|<B>-128x192</B>
+<dt><b>-1</b>|<b>-Base/16</b>|<b>-128x192</b>
 
-<DD>Extract the Base/16 image.
+<dd>Extract the Base/16 image.
 
-<DT><B>-2</b>|<b>-Base/4</b>|<b>-256x384</B>
+<dt><b>-2</b>|<b>-Base/4</b>|<b>-256x384</b>
 
-<DD>Extract the Base/4 image.
+<dd>Extract the Base/4 image.
 
-<DT><B>-3</b>|<b>-Base</b>|<b>-512x768</B>
+<dt><b>-3</b>|<b>-Base</b>|<b>-512x768</b>
 
-<DD>Extract the Base image.
+<dd>Extract the Base image.
 
-<DT><B>-4</b>|<b>-4Base</b>|<b>-1024x1536</B>
+<dt><b>-4</b>|<b>-4Base</b>|<b>-1024x1536</b>
 
-<DD>Extract the 4Base image.
+<dd>Extract the 4Base image.
 
-<DT><B>-5</b>|<b>-16Base</b>|<b>-2048x3072</B>
+<dt><b>-5</b>|<b>-16Base</b>|<b>-2048x3072</b>
 
-<DD>Extract the 16Base image.
+<dd>Extract the 16Base image.
 
-<DT><B>-6</b>|<b>-64Base</b>|<b>-4096x6144</B>
+<dt><b>-6</b>|<b>-64Base</b>|<b>-4096x6144</b>
 
-<DD>Extract the 64Base image.  This resolution can be extracted from
+<dd>Extract the 64Base image.  This resolution can be extracted from
 ProPhotoCD images only.  The path of the 64Base extension files is
 derived from the path to the image file. This means that it doesn't
 work on stdin an the directory structure must be the very same as on
 the ProPhotoCD.
 
-</DL>
+</dl>
 
-<H2 id="postscriptoutput">Postcript Output</H2>
+<h2 id="postscriptoutput">POSTSCRIPT OUTPUT</h2>
 
-<p>For Postscript output (options <B>-ps</B>, <B>-eps</B>,
-<B>-psg</B>, <B>-epsg</B>, <B>-psd</B>, <B>-epsg</B>) you can define
+<p>For Postscript output (options <b>-ps</b>, <b>-eps</b>,
+<b>-psg</b>, <b>-epsg</b>, <b>-psd</b>, <b>-epsg</b>) you can define
 both the resolution and placement of the image.  Both size and
 position are specified in points (1/72 inch).
 
-<P>The position of the image (where the origin is assumed to be at the
-lower left corner of the page) is controlled by the <B>-pl</B> and
-<B>-pb</B> options (applicable at all resolutions).  
+<p>The position of the image (where the origin is assumed to be at the
+lower left corner of the page) is controlled by the <b>-pl</b> and
+<b>-pb</b> options (applicable at all resolutions).  
 
-<P>The size of color and grayscale images is changed with the
-<B>-pw</B> and <B>-ph</B> options.  Every image pixel is mapped onto
+<p>The size of color and grayscale images is changed with the
+<b>-pw</b> and <b>-ph</b> options.  Every image pixel is mapped onto
 one Postscript pixel.
 
-<P>There are three modes of control for dithered Postscript: 
+<p>There are three modes of control for dithered Postscript: 
 
-<DL COMPACT>
-<DT>Image size
+<dl compact>
+<dt>Image size
 
-<DD> (<B>-pw</B> and <B>-ph</B>)
+<dd> (<b>-pw</b> and <b>-ph</b>)
 
-<DT>Printer resolution
+<dt>Printer resolution
 
-<DD>(<B>-dpi</B>)
+<dd>(<b>-dpi</b>)
 
-<DT>Scaling factor
+<dt>Scaling factor
 
-<DD>(<B>-fak</B>)
+<dd>(<b>-fak</b>)
 
-</DL>
+</dl>
 
-<P>These three factors are interdependent, hence no more then two can
-be specified simultaneously.  Using <B>-dpi</B> and the
-<B>-pw</B>/<B>-ph</B> options together often yields pleasing results.
+<p>These three factors are interdependent, hence no more then two can
+be specified simultaneously.  Using <b>-dpi</b> and the
+<b>-pw</b>/<b>-ph</b> options together often yields pleasing results.
 Even using the default values for these options will produce results
 differing from those obtained without use of the options.
 
-<H2 id="limitations">Limitations</H2>
+<h2 id="limitations">LIMITATIONS</h2>
 <p>The program ignores read protection.
 
-<P>The <B>-i</B> option is not working correctly.
+<p>The <b>-i</b> option is not working correctly.
 
-<P>Available information obout the Photo-CD format is vague; this
+<p>Available information obout the Photo-CD format is vague; this
 program was developed by trial-and-error after staring at hex-dumps.
 Please send bugs reports and patches to the author.
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pcdovtoppm.html">pcdovtoppm</A>,
-<A HREF="pamarith.html">pamarith</A>,
-<A HREF="ppm.html">ppm</A>,
-<A HREF="ppmhist.html">ppmhist</A>,
-<A HREF="pnmquant.html">pnmquant</A>,
-<A HREF="ppmtopgm.html">ppmtopgm</A>,
-<A HREF="ppmtorgb3.html">ppmtorgb3</A>,
+<a href="pcdovtoppm.html">pcdovtoppm</a>,
+<a href="pamarith.html">pamarith</a>,
+<a href="ppm.html">ppm</a>,
+<a href="ppmhist.html">ppmhist</a>,
+<a href="pnmquant.html">pnmquant</a>,
+<a href="ppmtopgm.html">ppmtopgm</a>,
+<a href="ppmtorgb3.html">ppmtorgb3</a>,
 <b>xv</b>
 
 
-<H2 id="version">VERSION</H2>
+<h2 id="version">VERSION</h2>
 
 <p>The name <b>hpcdtoppm</b> stands for "Hadmut's pcdtoppm," to
 make it distinguishable in the event that someone else is building a
@@ -394,10 +398,10 @@ similar application and naming it <b>pcdtoppm</b>.
 <p>This is version 0.6.
 
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
-Copyright (c) 1992, 1993, 1994 by Hadmut Danisch (<A
-HREF="mailto:danisch@ira.uka.de">danisch@ira.uka.de</A>).
+Copyright (c) 1992, 1993, 1994 by Hadmut Danisch (<a
+href="mailto:danisch@ira.uka.de">danisch@ira.uka.de</a>).
 
 <p>Hadmut Danish has given permission to Bryan Henderson (August 2003)
 to distribute this documentation as part of Netpbm on Sourceforge and
@@ -413,26 +417,26 @@ and without fee is hereby granted, provided that the above copyright
 notice appear in all copies and that both that copyright notice and
 this permission notice appear in supporting documentation.
 
-<P>The <b>hpcdtoppm</b> software itself (as opposed to this supporting
+<p>The <b>hpcdtoppm</b> software itself (as opposed to this supporting
 documentation) is licensed by Danisch under a similar license, but
 with an additional restriction that a recipient may not sell the
 software or use it in profit-making activity.  See the source code of
 the program for details on its license.
 
-<P> Manual page extensively modified by R. P. C. Rodgers (<A
-HREF="mailto:rodgers@nlm.nih.gov">rodgers@nlm.nih.gov</A>).
-
-<HR>
-<H2>Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#postscriptoutput">POSTSCRIPT OUTPUT</A>
-<LI><A HREF="#limitations">LIMITATIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#version">VERSION</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<p> Manual page extensively modified by R. P. C. Rodgers (<a
+href="mailto:rodgers@nlm.nih.gov">rodgers@nlm.nih.gov</a>).
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#postscriptoutput">POSTSCRIPT OUTPUT</a>
+<li><a href="#limitations">LIMITATIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#version">VERSION</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/icontopbm.html b/icontopbm.html
index 684e230c..e77cd875 100644
--- a/icontopbm.html
+++ b/icontopbm.html
@@ -1,21 +1,19 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Icontopbm User Manual</TITLE></HEAD>
-<BODY>
-<H1>icontopbm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Icontopbm User Manual</title></head>
+<body>
+<h1>icontopbm</h1>
 
-<A HREF="#index">Table Of Contents</A>
+<h2>NAME</h2>
 
-<H2>NAME</H2>
+icontopbm - replaced by sunicontopnm
 
-icontopbm - convert a Sun icon image to PBM
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<b>icontopbm</b>
+[<i>iconfile</i>]
 
-<B>icontopbm</B>
-[<I>iconfile</I>]
 
-
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -36,9 +34,5 @@ for <b>icontopbm</b>, as long as you recognize that any change the
 <b>sunicontopnm</b> manual says happened in or after Netpbm 10.53 doesn't
 apply to <b>icontopbm</b>.
 
-</BODY>
-</HTML>
-
-
-
-
+</body>
+</html>
diff --git a/jbigtopnm.html b/jbigtopnm.html
index 98f6883a..ea7a8679 100644
--- a/jbigtopnm.html
+++ b/jbigtopnm.html
@@ -1,30 +1,30 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Jbigtopnm User Manual</TITLE></HEAD>
-<BODY>
-<H1>Jbigtopnm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Jbigtopnm User Manual</title></head>
+<body>
+<h1>jbigtopnm</h1>
 Updated: 29 September 2018
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 jbigtopnm - JBIG to PNM image file converter
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>jbigtopnm</B>
+<b>jbigtopnm</b>
 [<b>-xmax</b>]
 [<b>-ymax</b>]
 [<b>-binary</b>]
 [<b>-diagnose</b>]
 [<b>-plane</b>]
-[<I>input-file</I> [<I>output-file</I>]]
+[<i>input-file</i> [<i>output-file</i>]]
 
 <p>Minimum unique abbreviation of option is acceptable.  You may use double
 hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -33,100 +33,105 @@ file or standard input, decompresses it, and outputs a PBM or PGM
 file.  If the input has one plane, or you choose just one plane of it,
 the output is PBM.  Otherwise, the output is PGM.
 
-<P>JBIG is a highly effective lossless compression algorithm for
+<p>JBIG is a highly effective lossless compression algorithm for
 bi-level images (one bit per pixel), which is particularly suitable
 for scanned document pages.
 
-<P>A JBIG encoded image can be stored in several resolutions in one or
+<p>A JBIG encoded image can be stored in several resolutions in one or
 several BIEs. All resolution layers except the lowest one are stored
 efficiently as differences to the next lower resolution layer.  You
-can use options <B>-x</B> and <B>-y</B> to stop the decompression at a
+can use options <b>-x</b> and <b>-y</b> to stop the decompression at a
 specified maximal output image size.  The input file can consist of
 several concatenated BIEs which contain different increasing
 resolution layers of the same image.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
+
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>jbigtopnm</b> recognizes the following
+command line options:
 
 <p>Before Netpbm 10.85 (December 2018), only single-character single-hyphen
 abbreviations of the options are accepted.
 
-<DL COMPACT>
+<dl compact>
 
-<DT><B>-x</B> <I>number</I>
+<dt><b>-xmax</b> <i>number</i>
 
-<DD>Decode only up to the largest resolution layer which is still not
-more than <I>number</I> pixels wide.  If no such resolution layer
+<dd>Decode only up to the largest resolution layer which is still not
+more than <i>number</i> pixels wide.  If no such resolution layer
 exists, then use the smallest one available.
 
-<DT><B>-y</B><I> number</I>
+<dt><b>-ymax</b><i> number</i>
 
-<DD>Decode only up to the largest resolution layer which is still not
-more than <I>number</I> pixels high.  If no such resolution layer
+<dd>Decode only up to the largest resolution layer which is still not
+more than <i>number</i> pixels high.  If no such resolution layer
 exists, then use the smallest one available.  You can also use options
-<B>-x</B> and <B>-y</B> together which selects the largest layer that
+<b>-x</b> and <b>-y</b> together which selects the largest layer that
 satisfies both limits.
 
-<DT><B>-b</B>
+<dt><b>-binary</b>
 
-<DD>Use binary values instead of Gray code words in order to decode
+<dd>Use binary values instead of Gray code words in order to decode
 pixel values from multiple bitplanes.  This option has effect only if
 the input has more than one bitplane and you don't select just one of
 those bitplanes.  Note that the decoder has to be used in the same
 mode as the encoder and cannot determine from the BIE, whether Gray or
 binary code words were used by the encoder.
 
-<DT><B>-d</B>
+<dt><b>-diagnose</b>
 
-<DD>Diagnose a BIE.  With this option, <B>jbigtopnm</B> only prints a
+<dd>Diagnose a BIE.  With this option, <b>jbigtopnm</b> only prints a
 summary of the header information found in the input file and then
 exits.
 
-<DT><B>-p</B><I> number</I>
+<dt><b>-plane</b><i> number</i>
 
-<DD>If the input contains multiple bitplanes, then extract only the
+<dd>If the input contains multiple bitplanes, then extract only the
 specified single plane as a PBM file.  The first plane has number 0.
 
-</DL>
+</dl>
 
-<H2 id="standards">STANDARDS</H2>
+<h2 id="standards">STANDARDS</h2>
 
 <p>This program implements the JBIG image coding algorithm as
 specified in ISO/IEC 11544:1993 and ITU-T T.82(1993).
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 <!-- jbgtopnm below is not a typo.  It is not meant to be jbigtopnm -->
-<p><B>jbigtopnm</B> is based on the JBIG library by Markus Kuhn, part
+<p><b>jbigtopnm</b> is based on the JBIG library by Markus Kuhn, part
 of his <a
-href="http://www.cl.cam.ac.uk/~mgk25/jbigkit/"><B>JBIG-KIT</B>
-package</a>.  The <B>jbgtopbm</B> program is part of the
-<B>JBIG-KIT</B> package.
+href="http://www.cl.cam.ac.uk/~mgk25/jbigkit/"><b>JBIG-KIT</b>
+package</a>.  The <b>jbgtopbm</b> program is part of the
+<b>JBIG-KIT</b> package.
 
-<P><B>jbigtopnm</B> is part of the Netpbm package of graphics tools.
+<p><b>jbigtopnm</b> is part of the Netpbm package of graphics tools.
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="pnm.html">pnm</A></B>,
-<B><A HREF="pnmtojbig.html">pnmtojbig</A></B>
+<b><a href="pnm.html">pnm</a></b>,
+<b><a href="pnmtojbig.html">pnmtojbig</a></b>
 
-<H2 id="license">LICENSE</H2>
+<h2 id="license">LICENSE</h2>
 
-If you use <B>jbigtopnm</B>, you are using various patents,
+If you use <b>jbigtopnm</b>, you are using various patents,
 particularly on its arithmetic encoding method, and in all probability
 you do not have a license from the patent owners to do so.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#standards">STANDARDS</A>
-<LI><A HREF="#author">AUTHOR</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#license">LICENSE</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#standards">STANDARDS</a>
+<li><a href="#author">AUTHOR</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#license">LICENSE</a>
+</ul>
+</body>
+</html>
 
 
diff --git a/jpegtopnm.html b/jpegtopnm.html
index 1d489070..9262e033 100644
--- a/jpegtopnm.html
+++ b/jpegtopnm.html
@@ -1,39 +1,39 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Jpegtopnm User Manual</TITLE></HEAD>
-<BODY>
-<H1>JPEGTOPNM</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Jpegtopnm User Manual</title></head>
+<body>
+<h1>jpegtopnm</h1>
 Updated: 13 October 2002
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 jpegtopnm - convert JPEG/JFIF file to PPM or PGM image
 
-<H2 id="synopsis">SYNOPSIS</H2>
-
-<B>jpegtopnm</B>
-[<B>-dct</B> {<B>int</B>|<B>fast</B>|<B>float</B>}]
-[<B>-nosmooth</B>]
-[<B>-maxmemory</B> <I>N</I>]
-[{<B>-adobe</B>|<B>-notadobe</B>}]
-[<B>-comments</B>]
-[<B>-dumpexif</B>]
-[<B>-exif=</B><I>filespec</I>]
-[<B>-multiple</B>]
-[<B>-repair</B>]
-[<B>-verbose</B>]
-[<B>-tracelevel</B> <I>N</I>]
-[<I>filename</I>]
+<h2 id="synopsis">SYNOPSIS</h2>
+
+<b>jpegtopnm</b>
+[<b>-dct</b> {<b>int</b>|<b>fast</b>|<b>float</b>}]
+[<b>-nosmooth</b>]
+[<b>-maxmemory</b> <i>N</i>]
+[{<b>-adobe</b>|<b>-notadobe</b>}]
+[<b>-comments</b>]
+[<b>-dumpexif</b>]
+[<b>-exif=</b><i>filespec</i>]
+[<b>-multiple</b>]
+[<b>-repair</b>]
+[<b>-verbose</b>]
+[<b>-tracelevel</b> <i>N</i>]
+[<i>filename</i>]
 
 <p>Minimum unique abbreviation of option is acceptable.  You may use double
 hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
-<P><B>jpegtopnm</B> converts JFIF images to PPM or PGM images.
+<p><b>jpegtopnm</b> converts JFIF images to PPM or PGM images.
 
 <p>By default, <b>jpegtopnm</b> expects the input stream to contain one
 JFIF image and produces one PGM or PPM image as output.  It fails if the
@@ -48,7 +48,7 @@ so is the output.
 don't specify <i>filename</i>, Standard Input.  The output stream is
 Standard Output.
 
-<p>If a JFIF input image is of the grayscale variety, <B>jpegtopnm</B>
+<p>If a JFIF input image is of the grayscale variety, <b>jpegtopnm</b>
 generates a PGM image.  Otherwise, it generates a PPM image.
 
 <p>Before Netpbm 10.11 (October 2002), <b>jpegtopnm</b> did not have
@@ -62,61 +62,68 @@ something other than another JFIF image.  The producers of these files
 expect them to work with any JFIF interpreter because most JFIF
 interpreters just stop reading the file after the first JFIF image.
 
-<p><B>jpegtopnm</B> uses the Independent JPEG Group's JPEG library to
-interpret the input file.  See <B><A
-HREF="http://www.ijg.org">http://www.ijg.org</A> </B>
+<p><b>jpegtopnm</b> uses the Independent JPEG Group's JPEG library to
+interpret the input file.  See <b><a
+href="http://www.ijg.org">http://www.ijg.org</a> </b>
 for information on the library.
 
-<P>"JFIF" is the correct name for the image format commonly
+<p>"JFIF" is the correct name for the image format commonly
 known as "JPEG." Strictly speaking, JPEG is a method of
 compression.  The image format using JPEG compression that is by far
 the most common is JFIF.  There is also a subformat of TIFF that uses
 JPEG compression.
 
-<P>EXIF is an image format that is a subformat of JFIF (to wit, a JFIF
+<p>EXIF is an image format that is a subformat of JFIF (to wit, a JFIF
 file that contains an EXIF header as an APP1 marker).
-<B>jpegtopnm</B> handles EXIF.
+<b>jpegtopnm</b> handles EXIF.
 
-<P>JFIF files can have either 8 bits per sample or 12 bits per sample.
+<p>JFIF files can have either 8 bits per sample or 12 bits per sample.
 The 8 bit variety is by far the most common.  There are two versions
 of the IJG JPEG library.  One reads only 8 bit files and the other
 reads only 12 bit files.  You must link the appropriate one of these
-libraries with <B>jpegtopnm</B>.  Ordinarily, this means the library
-is in your shared library search path when you run <B>jpegtopnm</B>.
+libraries with <b>jpegtopnm</b>.  Ordinarily, this means the library
+is in your shared library search path when you run <b>jpegtopnm</b>.
 
-<P><B>jpegtopnm</B> generates output with either one byte or two bytes
+<p><b>jpegtopnm</b> generates output with either one byte or two bytes
 per sample depending on whether the JFIF input has either 8 bits or 12
-bits per sample.  You can use <B>pamdepth</B> to reduce a
+bits per sample.  You can use <b>pamdepth</b> to reduce a
 two-byte-per-sample file to a one-byte-per-sample file if you need to.
 
-<P>If the JFIF file uses the CMYK or YCCK color space, the input does
+<p>If the JFIF file uses the CMYK or YCCK color space, the input does
 not actually contain enough information to know what color each pixel
 is.  To know what color a pixel is, one would have to know the
 properties of the inks to which the color space refers.
-<B>jpegtopnm</B> interprets the colors using the common transformation
+<b>jpegtopnm</b> interprets the colors using the common transformation
 which assumes all the inks are simply subtractive and linear.
 
-<p>See the <a href="jpegtopnm.html"><B>jpegtopnm</B> manual</a>
+<p>See the <a href="jpegtopnm.html"><b>jpegtopnm</b> manual</a>
 for information on how images lose quality when you convert to and
 from JFIF.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-The options are only for advanced users:
-<DL COMPACT>
-<DT><B>-dct int</B>
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>jpegtopnm</b> recognizes the following
+command line options:
 
-<DD>
+<p>
+The options are only for advanced users.
+
+<dl compact>
+<dt><b>-dct int</b>
+
+<dd>
 Use integer DCT method (default).
 
-<DT><B>-dct fast</B>
+<dt><b>-dct fast</b>
 
-<DD>
+<dd>
 Use fast integer DCT (less accurate).
 
-<DT><B>-dct float</B>
+<dt><b>-dct float</b>
 
-<DD>
+<dd>
 Use floating-point DCT method.
 The float method is very slightly more accurate than the int method, but is
 much slower unless your machine has very fast floating-point hardware.  Also
@@ -124,22 +131,22 @@ note that results of the floating-point method may vary slightly across
 machines, while the integer methods should give the same results everywhere.
 The fast integer method is much less accurate than the other two.
 
-<DT><B>-nosmooth</B>
+<dt><b>-nosmooth</b>
 
-<DD>
+<dd>
 Use a faster, lower-quality upsampling routine.
-<DT><B>-maxmemory</B><I> N</I>
+<dt><b>-maxmemory</b><i> N</i>
 
-<DD>Set limit on the amount of memory <B>jpegtopnm</B> uses in
+<dd>Set limit on the amount of memory <b>jpegtopnm</b> uses in
 processing large images.  Value is in thousands of bytes, or millions
 of bytes if "M" is suffixed to the number.  For example,
-<B>-maxmemory 4m</B> selects 4000000 bytes.  If <B>jpegtopnm</B> needs
+<b>-maxmemory 4m</b> selects 4000000 bytes.  If <b>jpegtopnm</b> needs
 more space, it uses temporary files.
 
-<DT><B>-adobe</B>
-<DT><B>-notadobe</B>
+<dt><b>-adobe</b>
+<dt><b>-notadobe</b>
 
-<DD>
+<dd>
 There are two variations on the CMYK (and likewise YCCK) color space that
 may be used in the JFIF input.  In the normal one, a zero value for a color
 components indicates absence of ink.  In the other, a zero value means the
@@ -147,52 +154,52 @@ maximum ink coverage.  The latter is used by Adobe Photoshop when it creates
 a bare JFIF output file (but not when it creates JFIF output as part of
 Encapsulated Postscript output).  
 
-<P>These options tell <B>jpegtopnm</B> which version of the CMYK or
+<p>These options tell <b>jpegtopnm</b> which version of the CMYK or
 YCCK color space the image uses.  If you specify neither,
-<B>jpegtopnm</B> tries to figure it out on its own.  In the present
+<b>jpegtopnm</b> tries to figure it out on its own.  In the present
 version, it doesn't try very hard at all: It just assumes the
 Photoshop version, since Photoshop and its emulators seem to be the
 main source of CMYK and YCCK images.  But with experience of use,
 future versions might be more sophisticated.
 
-<P>If the JFIF image does not indicate that it is CMYK or YCCK, these
+<p>If the JFIF image does not indicate that it is CMYK or YCCK, these
 options have no effect.
 
-<P>If you don't use the right one of these options, the symptom is
+<p>If you don't use the right one of these options, the symptom is
 output that looks like a negative.
 
-<DT><B>-dumpexif</B>
+<dt><b>-dumpexif</b>
 
-<DD>Print the interpreted contents of any Exif header in the input
-file to the Standard Error file.  Similar to the program <B>jhead</B>
+<dd>Print the interpreted contents of any Exif header in the input
+file to the Standard Error file.  Similar to the program <b>jhead</b>
 (not part of the Netpbm package).
 
 <p>This option was added in Netpbm 9.19 (September 2001).
      
-<DT><B>-exif=</B><I>filespec</I>
+<dt><b>-exif=</b><i>filespec</i>
 
-<DD>Extract the contents of the EXIF header from the input image and
-write it to the file <I>filespec</I>.  <I>filespec</I>=<B>-</B> means
+<dd>Extract the contents of the EXIF header from the input image and
+write it to the file <i>filespec</i>.  <i>filespec</i>=<b>-</b> means
 write it to Standard Output.  When you write the EXIF header to
-Standard Output, <B>jpegtopnm</B> does not output the converted image
+Standard Output, <b>jpegtopnm</b> does not output the converted image
 (which is what normally would go to Standard Output) at all.
 
-<p><B>jpegtopnm</B> writes the contents of the EXIF header
+<p><b>jpegtopnm</b> writes the contents of the EXIF header
 byte-for-byte, starting with the two byte length field (which length
 includes those two bytes).
 
-<P>You can use this file as input to <B>pnmtojpeg</B> to insert an
+<p>You can use this file as input to <b>pnmtojpeg</b> to insert an
 identical EXIF header into a new JFIF image.
 
-<P>If there is no EXIF header, <B>jpegtopnm</B> writes two bytes of
+<p>If there is no EXIF header, <b>jpegtopnm</b> writes two bytes of
 binary zero and nothing else.
 
-<P>An EXIF header takes the form of a JFIF APP1 marker.  Only the
+<p>An EXIF header takes the form of a JFIF APP1 marker.  Only the
 first such marker within the JFIF header counts.
 
 <p>This option was added in Netpbm 9.19 (September 2001).
 
-<DT><B>-multiple</B>
+<dt><b>-multiple</b>
 
 <dd>Read multiple JFIF images sequentially from the input stream.
 See <a href="#description">Description section</a> for details.
@@ -224,129 +231,128 @@ contents at the top, but the bottom is padded with gray.
 <b>jpegtopnm</b> always fails in the cases in question.
 
 
-<DT><B>-comments</B>
+<dt><b>-comments</b>
 
-<DD>
+<dd>
 Print any comments in the input file to the Standard Error file.
 
-<DT><B>-verbose</B>
+<dt><b>-verbose</b>
 
-<DD>
+<dd>
 Print details about the conversion to the Standard Error file.
 
-<DT><B>-tracelevel</B><I> n</I>
+<dt><b>-tracelevel</b><i> n</i>
 
-<DD>Turn on the JPEG library's trace messages to the Standard Error
-file.  A higher value of <I>n</I> gets more trace information.
-<B>-verbose</B> implies a trace level of at least 1.
+<dd>Turn on the JPEG library's trace messages to the Standard Error
+file.  A higher value of <i>n</i> gets more trace information.
+<b>-verbose</b> implies a trace level of at least 1.
 
-</DL>
+</dl>
 
-<H2 id="examples">EXAMPLES</H2>
+<h2 id="examples">EXAMPLES</h2>
 
-<P>This example converts the color JFIF file foo.jpg to a PPM file
+<p>This example converts the color JFIF file foo.jpg to a PPM file
 named foo.ppm:
 
-<PRE>
+<pre>
     jpegtopnm foo.jpg &gt;foo.ppm
-</PRE>
+</pre>
 
-<H2 id="hints">HINTS</H2>
+<h2 id="hints">HINTS</h2>
 
-You can use <B>pnmquant</B> to color quantize the result, i.e. to
+You can use <b>pnmquant</b> to color quantize the result, i.e. to
 reduce the number of distinct colors in the image.  In fact, you may
 have to if you want to convert the PPM file to certain other formats.
-<B>ppmdither</B> Does a more sophisticated quantization.
+<b>ppmdither</b> Does a more sophisticated quantization.
 
-<p>Use <B>pamscale</B> to change the dimensions of the resulting
+<p>Use <b>pamscale</b> to change the dimensions of the resulting
 image.
 
-<P>Use <B>ppmtopgm </B> to convert a color JFIF file to a grayscale
+<p>Use <b>ppmtopgm </b> to convert a color JFIF file to a grayscale
 PGM file.
 
-<P>You can easily use these converters together.  E.g.:
+<p>You can easily use these converters together.  E.g.:
 
-<PRE>
+<pre>
     jpegtopnm foo.jpg | ppmtopgm | pamscale .25 &gt;foo.pgm
-</PRE>
+</pre>
 
-<P><B>-dct fast</B> and/or <B>-nosmooth</B> gain speed at a small
+<p><b>-dct fast</b> and/or <b>-nosmooth</b> gain speed at a small
 sacrifice in quality.
 
-<P>If you are fortunate enough to have very fast floating point
-hardware, <B>-dct float</B> may be even faster than <B>-dct fast</B>.
-But on most machines <B>-dct float</B> is slower than <B>-dct int</B>;
+<p>If you are fortunate enough to have very fast floating point
+hardware, <b>-dct float</b> may be even faster than <b>-dct fast</b>.
+But on most machines <b>-dct float</b> is slower than <b>-dct int</b>;
 in this case it is not worth using, because its theoretical accuracy
 advantage is too small to be significant in practice.
 
-<P>Another program, <B>djpeg</B>, is similar.  <B>djpeg</B> is
+<p>Another program, <b>djpeg</b>, is similar.  <b>djpeg</b> is
 maintained by the Independent JPEG Group and packaged with the JPEG
-library which <B>jpegtopnm</B> uses for all its JPEG work.  Because of
+library which <b>jpegtopnm</b> uses for all its JPEG work.  Because of
 that, you may expect it to exploit more current JPEG features.  Also,
-since you have to have the library to run <B>jpegtopnm</B>, but not
-vice versa, <B>cjpeg</B> may be more commonly available.
+since you have to have the library to run <b>jpegtopnm</b>, but not
+vice versa, <b>cjpeg</b> may be more commonly available.
 
-<P>On the other hand, <B>djpeg</B> does not use the NetPBM libraries
+<p>On the other hand, <b>djpeg</b> does not use the NetPBM libraries
 to generate its output, as all the NetPBM tools such as
-<B>jpegtopnm</B> do.  This means it is less likely to be consistent
+<b>jpegtopnm</b> do.  This means it is less likely to be consistent
 with all the other programs that deal with the NetPBM formats.  Also,
-the command syntax of <B>jpegtopnm</B> is consistent with that of the
-other Netpbm tools, unlike <B>djpeg</B>.
+the command syntax of <b>jpegtopnm</b> is consistent with that of the
+other Netpbm tools, unlike <b>djpeg</b>.
 
-<H2 id="environment">ENVIRONMENT</H2>
+<h2 id="environment">ENVIRONMENT</h2>
 
-<DL COMPACT>
-<DT><B>JPEGMEM</B>
+<dl compact>
+<dt><b>JPEGMEM</b>
 
-<DD>If this environment variable is set, its value is the default
+<dd>If this environment variable is set, its value is the default
 memory limit.  The value is specified as described for the
-<B>-maxmemory</B> option.  An explicit <B>-maxmemory </B> option
-overrides any <B>JPEGMEM</B>.
+<b>-maxmemory</b> option.  An explicit <b>-maxmemory </b> option
+overrides any <b>JPEGMEM</b>.
 
-</DL>
+</dl>
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
 <p>
-<B><A HREF="ppm.html">ppm</A></B>,
-<B><A HREF="pgm.html">pgm</A></B>,
-<B><A HREF="pnmtojpeg.html">pnmtojpeg</A></B>,
-<B><A HREF="pnmquant.html">pnmquant</A></B>,
-<B><A HREF="pamscale.html">pamscale</A></B>,
-<B><A HREF="ppmtopgm.html">ppmtopgm</A></B>,
-<B><A HREF="ppmdither.html">ppmdither</A></B>,
-<B><A HREF="pamdepth.html">pamdepth</A></B>,
+<b><a href="ppm.html">ppm</a></b>,
+<b><a href="pgm.html">pgm</a></b>,
+<b><a href="pnmtojpeg.html">pnmtojpeg</a></b>,
+<b><a href="pnmquant.html">pnmquant</a></b>,
+<b><a href="pamscale.html">pamscale</a></b>,
+<b><a href="ppmtopgm.html">ppmtopgm</a></b>,
+<b><a href="ppmdither.html">ppmdither</a></b>,
+<b><a href="pamdepth.html">pamdepth</a></b>,
 
 <p>
-<B>djpeg</B> man page,
-<B>cjpeg</B> man page,
-<B>jpegtran</B> man page,
-<B>rdjpgcom</B> man page,
-<B>wrjpgcom</B> man page,
-<B>jhead</B> man page
+<b>djpeg</b> man page,
+<b>cjpeg</b> man page,
+<b>jpegtran</b> man page,
+<b>rdjpgcom</b> man page,
+<b>wrjpgcom</b> man page,
+<b>jhead</b> man page
 
 <p>Wallace, Gregory K.  "The JPEG Still Picture Compression
 Standard", Communications of the ACM, April 1991 (vol. 34,
 no. 4), pp. 30-44.
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
-<p><B>jpegtopnm</B> and this manual were derived in large part from
-<B>djpeg</B>, by the Independent JPEG Group.  The program is otherwise
+<p><b>jpegtopnm</b> and this manual were derived in large part from
+<b>djpeg</b>, by the Independent JPEG Group.  The program is otherwise
 by Bryan Henderson on March 19, 2000.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#examples">EXAMPLES</A>
-<LI><A HREF="#hints">HINTS</A>
-<LI><A HREF="#environment">ENVIRONMENT</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#limitations">LIMITATIONS</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#examples">EXAMPLES</a>
+<li><a href="#hints">HINTS</a>
+<li><a href="#environment">ENVIRONMENT</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/mrf.html b/mrf.html
index f0f0e531..7415980e 100644
--- a/mrf.html
+++ b/mrf.html
@@ -12,7 +12,7 @@ MRF - monochrome recursive format (compressed bitmaps)
 
 <h2 id="description">DESCRIPTION</h2>
 
-<p>This document describes the MRF format supported by
+<p>This document describes the MRF format recognized by
 <a href="index.html">Netpbm</a>.
 
 <p>MRF is a compressed format for bilevel (1-bit mono) images.  It
diff --git a/pam.html b/pam.html
index 0078d4f0..a45846e4 100644
--- a/pam.html
+++ b/pam.html
@@ -1,34 +1,34 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-<HEAD>
-<TITLE>PAM format specification</TITLE>
-<META NAME="manual_section" CONTENT="5">
-</HEAD>
-<BODY>
-<A HREF="#index">Table Of Contents</A>
-
-<H1>pam</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html>
+<head>
+<title>PAM format specification</title>
+<meta name="manual_section" content="5">
+</head>
+<body>
+
+<h1>pam</h1>
 Updated: 27 November 2013
-<BR>
+<br>
+<a href="#index">Table Of Contents</a>
 <?makeman .SH NAME ?>
 <?makeman pam - Netpbm common 2-dimensional bitmap format ?>
 
-<H2 id="general">GENERAL</H2>
+<h2 id="general">GENERAL</h2>
 
 <p>The PAM image format is a lowest common denominator 2 dimensional map
 format.
 
-<P>It is designed to be used for any of myriad kinds of graphics, but can
+<p>It is designed to be used for any of myriad kinds of graphics, but can
 theoretically be used for any kind of data that is arranged as a two
 dimensional rectangular array.  Actually, from another perspective it
 can be seen as a format for data arranged as a three dimensional
 array.
 
-<P>The name "PAM" is an acronym derived from "Portable
+<p>The name "PAM" is an acronym derived from "Portable
 Arbitrary Map." This derivation makes more sense if you consider
 it in the context of the other Netpbm format names: PBM, PGM, and PPM.
 
-<P>This format does not define the meaning of the data at any particular
+<p>This format does not define the meaning of the data at any particular
 point in the array.  It could be red, green, and blue light
 intensities such that the array represents a visual image, or it could
 be the same red, green, and blue components plus a transparency
@@ -36,7 +36,7 @@ component, or it could contain annual rainfalls for places on the
 surface of the Earth.  Any process that uses the PAM format must 
 further define the format to specify the meanings of the data.
 
-<P>A PAM image describes a two dimensional grid of tuples.  The tuples are
+<p>A PAM image describes a two dimensional grid of tuples.  The tuples are
 arranged in rows and columns.  The width of the image is the number of
 columns.  The height of the image is the number of rows.  All rows are the
 same width and all columns are the same height.  The tuples may have any
@@ -48,7 +48,7 @@ maxval is the same for every sample in the image.  The two dimensional array
 of all the Nth samples of each tuple is called the Nth plane or Nth channel of
 the image.
 
-<P>Though the basic format does not assign any meaning to the tuple values, it
+<p>Though the basic format does not assign any meaning to the tuple values, it
 does include an optional string that describes that meaning.  The
 contents of this string, called the tuple type, are arbitrary from the
 point of view of the basic PAM format, but users of the format may assign
@@ -56,23 +56,23 @@ meaning to it by convention so they can identify their particular
 implementations of the PAM format.  Some tuple types are defined as
 official subformats of PAM.  See <a href="#tupletype">Defined Tuple Types</a>.
 
-<H2 id="format_universe">The Confusing Universe of Netpbm Formats</H2>
+<h2 id="format_universe">The Confusing Universe of Netpbm Formats</h2>
 
-<P>It is easy to get confused about the relationship between the PAM
+<p>It is easy to get confused about the relationship between the PAM
 format and PBM, PGM, PPM, and PNM.  Here is a little enlightenment:
 
-<P>"PNM" is not really a format.  It is a shorthand for the PBM, PGM,
+<p>"PNM" is not really a format.  It is a shorthand for the PBM, PGM,
 and PPM formats collectively.  It is also the name of a group of
 library functions that can each handle all three of those formats.
 
-<P>"PAM" is in fact a fourth format.  But it is so general
+<p>"PAM" is in fact a fourth format.  But it is so general
 that you can represent the same information in a PAM image as you can
 in a PBM, PGM, or PPM image.  And in fact a program that is designed
 to read PBM, PGM, or PPM and does so with a recent version of the
 Netpbm library will read an equivalent PAM image just fine and the
 program will never know the difference.
 
-<P>To confuse things more, there is a collection of library routines
+<p>To confuse things more, there is a collection of library routines
 called the "pam" functions that read and write the PAM
 format, but also read and write the PBM, PGM, and PPM formats.  They
 do this because the latter formats are much older and more popular, so
@@ -80,21 +80,21 @@ even a new program must work with them.  Having the library handle all
 the formats makes it convenient to write programs that use the newer
 PAM format as well.
 
-<H2 id="layout">THE LAYOUT</H2>
+<h2 id="layout">THE LAYOUT</h2>
 
-<P>A convenient way to read and write the PAM format accurately is via the
+<p>A convenient way to read and write the PAM format accurately is via the
 <a href="libnetpbm.html">libnetpbm</a> C subroutine library.
 
-<P>A PAM file consists of a sequence of one or more PAM images.  There are
+<p>A PAM file consists of a sequence of one or more PAM images.  There are
 no data, delimiters, or padding before, after, or between images.
 
-<P>
+<p>
 Each PAM image consists of a header followed immediately by a raster.
-<P>
+<p>
 Here is an example header:
 
 <pre>
-<tt>
+<span style="font-family: monospace">
 P7
 WIDTH 227
 HEIGHT 149
@@ -102,87 +102,87 @@ DEPTH 3
 MAXVAL 255
 TUPLTYPE RGB
 ENDHDR
-</tt>
+</span>
 </pre>
 
-<P>The header begins with the ASCII characters "P7" followed
+<p>The header begins with the ASCII characters "P7" followed
 by newline.  This is the magic number.
 
-<P>Note: <b>xv</b> thumbnail images also start with the "P7" magic number.
+<p>Note: <b>xv</b> thumbnail images also start with the "P7" magic number.
 (This and PAM were independent extensions to the Netpbm formats).  The rest
 of the format makes it easy to distinguish PAM from that format, though).
 
-<P>The header continues with an arbitrary number of lines of ASCII
+<p>The header continues with an arbitrary number of lines of ASCII
 text.  Each line ends with and is delimited by a newline character.
 
-<P>Each header line consists of zero or more whitespace-delimited
+<p>Each header line consists of zero or more whitespace-delimited
 tokens or begins with "#".  If it begins with "#"
 it is a comment and the rest of this specification does not apply to
 it.
 
-<P>A header line which has zero tokens is valid but has no meaning.
+<p>A header line which has zero tokens is valid but has no meaning.
 
-<P>The type of header line is identified by its first token, which is
+<p>The type of header line is identified by its first token, which is
 8 characters or less:
 
-<DL COMPACT>
-<DT><B>ENDHDR  </B>
+<dl compact>
+<dt><b>ENDHDR  </b>
 
-<DD>This is the last line in the header.  The header must contain
+<dd>This is the last line in the header.  The header must contain
 exactly one of these header lines.
 
-<DT><B>HEIGHT  </B>
+<dt><b>HEIGHT  </b>
 
-<DD>The second token is a decimal number representing the height
+<dd>The second token is a decimal number representing the height
 of the image (number of rows).  The header must contain exactly one
 of these header lines.
 
-<DT><B>WIDTH</B>
+<dt><b>WIDTH</b>
 
-<DD>The second token is a decimal number representing the width of the
+<dd>The second token is a decimal number representing the width of the
 image (number of columns).  The header must contain exactly one of
 these header lines.
 
-<DT><B>DEPTH</B>
+<dt><b>DEPTH</b>
 
-<DD>The second token is a decimal number representing the depth of the
+<dd>The second token is a decimal number representing the depth of the
 image (number of planes or channels).  The header must contain exactly
 one of these header lines.
 
-<DT><B>MAXVAL</B>
+<dt><b>MAXVAL</b>
 
-<DD>The second token is a decimal number representing the maxval of the image.
+<dd>The second token is a decimal number representing the maxval of the image.
 The header must contain exactly one of these header lines.
 
-<DT><B>TUPLTYPE</B>
+<dt><b>TUPLTYPE</b>
 
-<DD>The header may contain any number of these header lines, including
+<dd>The header may contain any number of these header lines, including
 zero.  The rest of the line is part of the tuple type.  The rest of
 the line is not tokenized, but the tuple type does not include any
-white space immediately following <B>TUPLTYPE </B> or at the very end
+white space immediately following <b>TUPLTYPE </b> or at the very end
 of the line.  It does not include a newline.  There must be something
 other than white space after the <b>TUPLTYPE</b> token.
 
-<p>If there are multiple <B>TUPLTYPE</B> header lines, the tuple type
+<p>If there are multiple <b>TUPLTYPE</b> header lines, the tuple type
 is the concatenation of the values from each of them, separated by a
 single blank, in the order in which they appear in the header.  If
-there are no <B>TUPLTYPE</B> header lines the tuple type is the null
+there are no <b>TUPLTYPE</b> header lines the tuple type is the null
 string.
 
-</DL>
+</dl>
 
-<P>
+<p>
 The raster consists of each row of the image, in order from top to bottom,
 consecutive with no delimiter of any kind between, before, or after, rows.
-<P>
+<p>
 Each row consists of every tuple in the row, in order from left to
 right, consecutive with no delimiter of any kind between, before, or
 after, tuples.
-<P>
+<p>
 Each tuple consists of every sample in the tuple, in order,
 consecutive with no delimiter of any kind between, before, or after,
 samples.
-<P>
+<p>
 Each sample consists of an unsigned integer in pure binary format,
 with the most significant byte first.  The number of bytes is the
 minimum number of bytes required to represent the maxval of the image.
@@ -190,20 +190,20 @@ minimum number of bytes required to represent the maxval of the image.
 <p>The character referred to as "newline" herein is the
 character known in ASCII as Line Feed or LF.
 
-<H2 id="limitations">LIMITATIONS</H2>
+<h2 id="limitations">LIMITATIONS</h2>
 
 <p>Height, width, depth, and maxval are at least 1.
 
 <p>Height, width, and depth have no defined maximum, but processors and
 generators of images usually have their own limitations.
 
-<P>The maxval of an image is never greater than 65535.  (The reason it is
+<p>The maxval of an image is never greater than 65535.  (The reason it is
 limited is to make it easier to build an image processor, in which
 intermediate arithmetic values often have to fit within 31 or 32 bits).
 There was no specified limitation before October, 2005, but essentially
 all implementations have always observed it.
 
-<H2 id="tupletype">DEFINED TUPLE TYPES</h2>
+<h2 id="tupletype">DEFINED TUPLE TYPES</h2>
 
 <p>Some tuple types are defined in this specification to specify
 official subformats of PAM for especially popular applications of the
@@ -225,34 +225,34 @@ separately validate that the depth is consistent with the tuple type.  Also,
 it is good practice to accept a depth that is too great and just ignore the
 higher numbered planes.
   
-<H3 id="visual">PAM Used For Visual Images</H3>
+<h3 id="visual">PAM Used For Visual Images</h3>
 
-<P>A common use of PAM images is to represent visual images such
+<p>A common use of PAM images is to represent visual images such
 as are typically represented by images in the older and more concrete
 PBM, PGM, and PPM formats.
 
 <h4>Black And White</h4>
 
-<P>A black and white image, such as would alternatively be represented by a
+<p>A black and white image, such as would alternatively be represented by a
 PBM image, has a tuple type of "BLACKANDWHITE".  Such a PAM image has a depth
 of 1 and maxval 1 where the one sample in each tuple is 0 to represent a black
 pixel and 1 to represent a white one.  The maxval, height, width, and order of
 tuples in the raster bear the obvious relationship to those of the equivalent
 PGM image.
 
-<P>Note that in the PBM format, a sample value of zero means white, but in
+<p>Note that in the PBM format, a sample value of zero means white, but in
 PAM, zero means black.
 
 <h4>Grayscale</h4>
 
-<P>A grayscale image, such as would alternatively be represented by a PGM
+<p>A grayscale image, such as would alternatively be represented by a PGM
 image, has a tuple type of "GRAYSCALE".  Such a PAM image has a depth of 1.
 The maxval, height, width, and raster bear the obvious relationship to those
 of the equivalent PGM image.
 
 <h4>Color</h4>
 
-<P>A color image, such as would alternatively be represented by a PPM image,
+<p>A color image, such as would alternatively be represented by a PPM image,
 has a tuple type of "RGB".  Such a PAM image has a depth of 3.  The maxval,
 height, width, and raster bear the obvious relationship to those of the PPM
 image.  The first plane represents red, the second green, and the third blue.
@@ -292,8 +292,9 @@ foreground color samples.
 
 <p>No Internet Media Type (aka MIME type, content type) for PBM has been
 registered with IANA, but the unofficial value
-<tt>image/x-portable-arbitrarymap</tt> is assigned by this specification, to
-be consistent with conventional values for the older Netpbm formats.
+<span style="font-family: monospace">image/x-portable-arbitrarymap</span> is
+assigned by this specification, to be consistent with conventional values for
+the older Netpbm formats.
 
 <h2 id="filename">FILE NAME</h2>
 
@@ -301,36 +302,36 @@ be consistent with conventional values for the older Netpbm formats.
 But this is not required.
 
 
-<H2 id="seealso">SEE ALSO</H2>
-
-<B><A HREF="index.html">Netpbm</A></B>,
-<B><A HREF="pbm.html">pbm</A></B>,
-<B><A HREF="pgm.html">pgm</A></B>,
-<B><A HREF="ppm.html">ppm</A></B>,
-<B><A HREF="pnm.html">pnm</A></B>,
-<B><A HREF="libnetpbm.html">libnetpbm</A></B>
-
-
-<HR>
-<H2 id="contents">Table Of Contents</H2>
-<UL>
-  <LI><A HREF="#general">GENERAL</A>
-  <LI><A HREF="#layout">THE LAYOUT</A>
-  <LI><A HREF="#limitations">LIMITATIONS</A>
-  <LI><A HREF="#format_universe">The Confusing Universe of Netpbm Formats</A>
-  <LI><A HREF="#tupletype">DEFINED TUPLE TYPES</A>
-    <UL>
-      <LI><A HREF="#visual">PAM Used For Visual Images</A>
-        <UL>
-          <LI>Black And White
-          <LI>Grayscale
-          <LI>Color
-          </UL>
-      </UL>
-  <LI><A HREF="#internetmediatype">INTERNET MEDIA TYPE</A>
-  <LI><A HREF="#filename">FILE NAME</A>
-  <LI><A HREF="#seealso">SEE ALSO</A>
-</UL>
-
-</BODY>
-</HTML>
+<h2 id="seealso">SEE ALSO</h2>
+
+<b><a href="index.html">Netpbm</a></b>,
+<b><a href="pbm.html">pbm</a></b>,
+<b><a href="pgm.html">pgm</a></b>,
+<b><a href="ppm.html">ppm</a></b>,
+<b><a href="pnm.html">pnm</a></b>,
+<b><a href="libnetpbm.html">libnetpbm</a></b>
+
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#general">GENERAL</a>
+<li><a href="#format_universe">The Confusing Universe of Netpbm Formats</a>
+<li><a href="#layout">THE LAYOUT</a>
+<li><a href="#limitations">LIMITATIONS</a>
+<li><a href="#tupletype">DEFINED TUPLE TYPES</a>
+  <ul>
+  <li><a href="#visual">PAM Used For Visual Images</a>
+    <ul>
+    <li>Black And White
+    <li>Grayscale
+    <li>Color
+    </ul>
+  </ul>
+<li><a href="#internetmediatype">INTERNET MEDIA TYPE</a>
+<li><a href="#filename">FILE NAME</a>
+<li><a href="#seealso">SEE ALSO</a>
+</ul>
+
+</body>
+</html>
diff --git a/pamarith.html b/pamarith.html
index 6ef9c639..e42af51d 100644
--- a/pamarith.html
+++ b/pamarith.html
@@ -1,34 +1,33 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-<HEAD><TITLE>Pamarith User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamarith</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamarith User Manual</title></head>
+<body>
+<h1>pamarith</h1>
 Updated: 03 January 2015
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 pamarith - perform arithmetic on two Netpbm images
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamarith</B>
-<B>-add</B> | <B>-subtract</B> | <B>-multiply</B> | <b>-divide</b> |
-<B>-difference</B> |
-<B>-minimum</B> | <B>-maximum</B> | <B>-mean</B> | <B>-compare</B> |
-<B>-and</B> | <B>-or</B> | <B>-nand</B> | <B>-nor</B> | <B>-xor</B> |
-<B>-shiftleft</B> | <B>-shiftright</B>
-<I>pamfile1</I> <I>pamfile2</I>
+<b>pamarith</b>
+<b>-add</b> | <b>-subtract</b> | <b>-multiply</b> | <b>-divide</b> |
+<b>-difference</b> |
+<b>-minimum</b> | <b>-maximum</b> | <b>-mean</b> | <b>-compare</b> |
+<b>-and</b> | <b>-or</b> | <b>-nand</b> | <b>-nor</b> | <b>-xor</b> |
+<b>-shiftleft</b> | <b>-shiftright</b>
+<i>pamfile1</i> <i>pamfile2</i>
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>All options can be abbreviated to their shortest unique prefix.
 You may use two hyphens instead of one.  You may separate an option
 name and its value with white space instead of an equals sign.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
-<P><b>pamarith</b> reads two PBM, PGM, PPM, or PAM images as input.
+<p><b>pamarith</b> reads two PBM, PGM, PPM, or PAM images as input.
 It performs the specified binary arithmetic operation on their sample
 values and produces an output of a format which is the more general of
 the two input formats.  The two input images must be of the same width
@@ -36,9 +35,9 @@ and height.  The arithmetic is performed on each pair of identically
 located tuples to generate the identically located tuple of the
 output.
 
-<P>For the purpose of the calculation, it assumes any PBM, PGM, or PPM
+<p>For the purpose of the calculation, it assumes any PBM, PGM, or PPM
 input image is the equivalent PAM image of tuple type
-<B>BLACKANDWHITE</B>, <B>GRAYSCALE</B>, or <B>RGB</B>, respectively,
+<b>BLACKANDWHITE</b>, <b>GRAYSCALE</b>, or <b>RGB</b>, respectively,
 and if it produces a PBM, PGM, or PPM output, produces the equivalent
 of the PAM image which is the result of the calculation.
 
@@ -49,7 +48,7 @@ argument image; the second <i>pamfile</i> argument identifies the
 <p>If the output is PAM, the tuple type is the same as the tuple type of
 the left input image.
 
-<P><b>pamarith</b> performs the arithmetic on each pair of identically
+<p><b>pamarith</b> performs the arithmetic on each pair of identically
 located tuples in the two input images.
 
 <p>The arithmetic operation is in all cases fundamentally a function from two
@@ -86,10 +85,10 @@ corresponds to "full intensity."), and a sample value
 divided by the maxval gives the fraction.
 
 <p>For <b>pamarith</b>, this interpretation applies to the regular
-arithmetic functions: <B>-add</B>, <B>-subtract</B>, <B>-multiply</B>,
+arithmetic functions: <b>-add</b>, <b>-subtract</b>, <b>-multiply</b>,
 <b>-divide</b>,
-<B>-difference</B>, <B>-minimum</B>, <B>-maximum</B>, <B>-mean</B>,
-and <B>-compare</B>.  For those, you should think of the arguments and
+<b>-difference</b>, <b>-minimum</b>, <b>-maximum</b>, <b>-mean</b>,
+and <b>-compare</b>.  For those, you should think of the arguments and
 result as numbers in the range [0,1).  For example, if the maxval of
 the left argument image is 100 and the maxval of the right argument
 image is 200 and the maxval of the output image is 200, and the left
@@ -97,7 +96,7 @@ sample value in an <b>-add</b> calculation is 50 and the right sample
 is 60, the actual calculation is 50/100 + 60/200 = 160/200, and
 the output sample value is 160.
 
-<P>For these functions, <b>pamarith</b> makes the output image's
+<p>For these functions, <b>pamarith</b> makes the output image's
 maxval the maximum of the two input maxvals, except with
 <b>-compare</b>, where <b>pamarith</b> uses an output maxval of 2.
 (Before Netpbm 10.14 (February 2003), there was no exception for
@@ -123,10 +122,10 @@ arithmetic on the fractions 5/255 and 10/255.  It multiplies those
 together and then rescales to the output maxval, giving a sample value
 in the output PAM of 50/255 rounded to the nearest integer: 0.
 
-<P>With the bit string operations, the maxval has a whole different
-meaning.  The operations in question are: <B>-and</B>, <B>-or</B>,
-<B>-nand</B>, <B>-nor</B>, <B>-xor</B>, and <B>-shiftleft</B>,
-<B>-shiftright</B>.
+<p>With the bit string operations, the maxval has a whole different
+meaning.  The operations in question are: <b>-and</b>, <b>-or</b>,
+<b>-nand</b>, <b>-nor</b>, <b>-xor</b>, and <b>-shiftleft</b>,
+<b>-shiftright</b>.
 
 <p>With these, each sample value in one or both input images, and in
 the output image, represents a bit string, not a number.  The maxval
@@ -144,30 +143,62 @@ interpretation of the samples.  The sample value is the actual shift
 count.  But it's still required that no sample value exceed the
 maxval.
 
-<h3 id="operations">The Operations</h3>
 
-<p>Most of the operations are obvious from the option name.  The following
-paragraphs cover those that aren't.
+<h2 id="note">NOTE: UNARY FUNCTIONS</h2>
 
-<P><B>-subtract</B> subtracts a value in the right input image from a
-value in the left input image.
+<p><b>pamarith</b> applies only binary functions.  If you want to apply a
+unary function, e.g. "halve", to a single image, use <b>pamfunc</b>.
 
-<P><B>-difference</B> calculates the absolute value of
-the difference.
 
-<p><b>-multiply</b> does an ordinary arithmetic multiplication, but
-tends to produce nonobvious results because of the way <b>pamarith</b>
-interprets sample values.  See <a href="#maxval">Maxval</a>.
+<h2 id="options">OPTIONS</h2>
 
-<P><b>-divide</b> divides a value in the left input image by the value
-in the right input image.  But like <b>-multiply</b>, it tends to
-produce nonobvious results.  Note that <b>pamarith</b> clipping
-behavior makes this of little use when the left argument (dividend) is
-greater than the right argument (divisor) -- the result in that case
-is always the maxval.  If the divisor is 0, the result is the maxval.
-This option was new in Netpbm 10.30 (October 2005).
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamarith</b> recognizes the following
+command line options:
 
-<P><B>-compare</B> produces the value <b>0</b> when the value in the
+<h3 id="function">The Function</h3>
+
+<p>These options select the function that <b>pamarith</b> applies.
+
+<p>You must specify one of these, and cannot specify more than one.
+  
+<dl compact>
+
+<dt><b>-add</b>
+<dd>Adds the two values.  If the result is larger than maxval, it is
+clipped.
+
+<dt><b>-subtract</b>
+<dd>Subtracts a value in the right input image from a value in the left input
+image.
+
+<dt><b>-minimum</b>
+<dd>Chooses the smaller value of the two.
+
+<dt><b>-maximum</b>
+<dd>Chooses the larger value of the two.
+
+<dt><b>-difference</b>
+<dd>Calculates the absolute value of the difference.
+
+<dt><b>-multiply</b>
+<dd>Does an ordinary arithmetic multiplication, but tends to produce
+nonobvious results because of the way <b>pamarith</b> interprets
+sample values.  See <a href="#maxval">Maxval</a>.
+
+<dt><b>-divide</b>
+<dd>Divides a value in the left input image by the value in the right
+input image.  But like <b>-multiply</b>, it tends to produce nonobvious
+results.  Note that <b>pamarith</b> clipping behavior makes this of
+little use when the left argument (dividend) is greater than the right
+argument (divisor) -- the result in that case is always the maxval.
+If the divisor is 0, the result is the maxval.
+
+<p><b>-divide</b> was new in Netpbm 10.30 (October 2005).
+
+<dt><b>-compare</b>
+<dd>Produces the value <b>0</b> when the value in the
 left input image is less than the value in the right input image,
 <b>1</b> when the values are equal, and <b>2</b> when the left is
 greater than the right.
@@ -179,44 +210,41 @@ say A is greater than B if A is less than B.
 
 <p><b>-compare</b> was new in Netpbm 10.13 (December 2002).
 
-<p><b>-and</b>, <b>-nand</b>, <b>-or</b>, <b>-nor</b>, and <b>-xor</b>
-consider the input and output images to contain bit strings; they
-compute bitwise logic operations.  Note that if the maxval is 1, you
-can also look at these as logic operations on boolean input values.
+<dt><b>-and</b>, <b>-nand</b>, <b>-or</b>, <b>-nor</b>, <b>-xor</b>
+<dd>These consider the input and output images to contain bit strings;
+they compute bitwise logic operations.  Note that if the maxval is 1,
+you can also look at these as logic operations on boolean input values.
 See section <a href="#maxval">Maxval</a> for the special meaning of
 maxval with respect to bit string operations such as these.
 
-<p><b>-shiftleft</b> and <b>-shiftright</b> consider the left input
-image and output image to contain bit strings.  They compute a bit
-shift operation, with bits falling off the left or right end and
-zeroes shifting in, as opposed to bits off one end to the other.  The
-right input image sample value is the number of bit positions to
-shift.
+<dt><b>-shiftleft</b>, <b>-shiftright</b>
+<dd>These consider the left input image and output image to contain
+bit strings.  They compute a bit shift operation, with bits falling
+off the left or right end and zeroes shifting in, as opposed to bits
+off one end to the other.  The right input image sample value is the
+number of bit positions to shift.
 
 <p>Note that the maxval (see <a href="#maxval">Maxval</a>) determines
 the width of the frame within which you are shifting.
 
-<h3 id="notes">Notes</h3>
-
-<P>If you want to apply a unary function, e.g. "halve", to a single
-image, use <b>pamfunc</b>.
+</dl>
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pamfunc.html"><b>pamfunc</b></A>,
-<A HREF="pamsummcol.html"><b>pamsummcol</b></A>,
-<A HREF="pamsumm.html"><b>pamsumm</b></A>,
-<A HREF="pnminvert.html"><b>pnminvert</b></A>,
-<A HREF="pambrighten.html"><b>pambrighten</b></A>,
-<A HREF="ppmdim.html"><b>ppmdim</b></A>,
-<A HREF="pnmconvol.html"><b>pnmconvol</b></A>,
-<A HREF="pamdepth.html"><b>pamdepth</b></A>,
-<A HREF="pnmpsnr.html"><b>pnmpsnr</b></A>,
-<A HREF="pnm.html">pnm</A>,
-<A HREF="pam.html">pam</A>
+<a href="pamfunc.html"><b>pamfunc</b></a>,
+<a href="pamsummcol.html"><b>pamsummcol</b></a>,
+<a href="pamsumm.html"><b>pamsumm</b></a>,
+<a href="pnminvert.html"><b>pnminvert</b></a>,
+<a href="pambrighten.html"><b>pambrighten</b></a>,
+<a href="ppmdim.html"><b>ppmdim</b></a>,
+<a href="pnmconvol.html"><b>pnmconvol</b></a>,
+<a href="pamdepth.html"><b>pamdepth</b></a>,
+<a href="pnmpsnr.html"><b>pnmpsnr</b></a>,
+<a href="pnm.html"><b>pnm</b></a>,
+<a href="pam.html"><b>pam</b></a>
 
 
-<H2 id="history">HISTORY</h2>
+<h2 id="history">HISTORY</h2>
 
 <p><b>pamarith</b> replaced <b>pnmarith</b> in Netpbm 10.3 (June 2002).
 
@@ -231,25 +259,29 @@ would be removed from Netpbm -- the plan was just to rewrite it to use
 the images to have different depths as long as one of them has depth 1, and
 that made it backward compatible with <b>pnmarith</b>.
 
-<P>The original <b>pnmarith</b> did not have the <b>-mean</b> option.
+<p>The original <b>pnmarith</b> did not have the <b>-mean</b> option.
 
-<P>The <b>-compare</b> option was added in Netpbm 10.13 (December 2002).
+<p>The <b>-compare</b> option was added in Netpbm 10.13 (December 2002).
 
 <p>The bit string operations were added in Netpbm 10.27 (March 2005).
 
-<P>The <b>-divide</b> option was added in Netpbm 10.30 (October 2005).
-
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#maxval">MAXVAL</A>
-<LI><A HREF="#operations">THE OPERATIONS</A>
-<LI><A HREF="#notes">NOTES</A>
-<LI><A HREF="#history">HISTORY</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<p>The <b>-divide</b> option was added in Netpbm 10.30 (October 2005).
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+  <ul>
+  <li><a href="#maxval">Maxval</a>
+  </ul>
+<li><a href="#options">OPTIONS</a>
+  <ul>
+  <li><a href="#options">The Functions</a>
+  </ul>
+<li><a href="#note">NOTE: UNARY FUNCTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
diff --git a/pamfix.html b/pamfix.html
index 1decac85..f4021fc7 100644
--- a/pamfix.html
+++ b/pamfix.html
@@ -1,32 +1,32 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamfix User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamfix</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamfix User Manual</title></head>
+<body>
+<h1>pamfix</h1>
 Updated: 06 March 2014
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pamfix - repair a Netpbm image with various corruptions
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamfix</B>
+<b>pamfix</b>
 
 [<b>-truncate</b>]
 [<b>-changemaxval</b>]
 [<b>-clip</b>]
 [<b>-verbose</b>]
 
-[<I>netpbmfile</I>]
+[<i>netpbmfile</i>]
 
 <p>Minimum unique abbreviation of option is acceptable.  You may use double
 hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -40,7 +40,7 @@ illegally large sample values.
 <p><b>pamfix</b> looks at only on the first image in a multi-image stream.
 
 
-<h3 id="truncatedstream">Truncated stream</h3>
+<h3 id="truncatedstream">Truncated Stream</h3>
 
 <p>This is a stream that is missing the last part.  Netpbm corrects this
 by creating an output image that simply has fewer rows.
@@ -111,12 +111,42 @@ in the image.  Request this with <b>-changemaxval</b>.
 <p>You cannot specify both <b>-clip</b> and <b>-changemaxval</b>.
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="options">OPTIONS</h2>
 
-<A HREF="pnm.html">pnm</A>,
-<A HREF="pam.html">pam</A>,
-<A HREF="pamcut.html">pamcut</A>,
-<A HREF="pamfile.html">pamfile</A>,
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamfix</b> recognizes the following
+command line options:
+
+<dl compact>
+<dt><b>-truncate</b>
+
+<dd>Create a truncated output image from all the valid input rows that
+could be read.
+
+<dt><b>-changemaxval</b>
+
+<dd>Raise the maxval to cope with pixel values that exceed the maxval
+stated in the header of the input file.
+
+<dt><b>-clip</b>
+
+<dd>Change all pixel values that exceed the maxval stated in the header
+of the input file.
+
+<dt><b>-verbose</b>
+
+<dd>Report details of the transportation to standard error.
+
+</dl>
+
+<h2 id="seealso">SEE ALSO</h2>
+
+<a href="pnm.html">pnm</a>,
+<a href="pam.html">pam</a>,
+<a href="pamcut.html">pamcut</a>,
+<a href="pamfile.html">pamfile</a>,
+<a href="pamvalidate.html">pamvalidate</a>
 
 <h2 id="history">HISTORY</h2>
 
@@ -125,15 +155,18 @@ in the image.  Request this with <b>-changemaxval</b>.
 the truncated image repair (and for invalid sample values would simply pass
 them through to its output, generating an invalid Netpbm image).
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<li><a href="#truncatedstream">Truncated Stream</a>
-<li><a href="#excessivesample">Excessive Sample Value</a>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+  <ul> 
+  <li><a href="#truncatedstream">Truncated Stream</a>
+  <li><a href="#excessivesample">Excessive Sample Value</a>
+  </ul>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
diff --git a/pammixmulti.html b/pammixmulti.html
index c5854c32..97cf4122 100755
--- a/pammixmulti.html
+++ b/pammixmulti.html
@@ -1,18 +1,14 @@
-<?xml version="1.0"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
-<html>
-<head>
-<title>Pammixmulti User Manual</title>
-</head>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pammixmulti User Manual</title></head>
 <body>
 <h1>pammixmulti</h1>
-
-Updated: 18 November 2018<br />
+Updated: 18 November 2018<br>
+<br>
 <a href="#index">Table Of Contents</a>
   
 
-<h2 id="name">NAME</h2>
-<p>pammixmulti - blend together multiple PAM images</p>
+<h2>NAME</h2>
+<p>pammixmulti - blend together multiple PAM images
 
 
 <h2 id="synopsis">SYNOPSIS</h2>
@@ -26,20 +22,24 @@ Updated: 18 November 2018<br />
 <p>Minimum unique abbreviation of an option is acceptable. You can use a
 single hyphen instead of double hyphens to denote options. You can use white
 space in place of the equals sign to separate an option name from its
-value.</p>
+value.
 
 
 <h2 id="description">DESCRIPTION</h2>
-<p>This file is part of <a href="http://netpbm.sourceforge.net/doc/index.html">Netpbm</a>.</p>
+<p>This file is part of <a href="index.html">Netpbm</a>.
 
 <p><b>pammixmulti</b> mixes two or more images to produce a new image. The
 program provides multiple ways to interpret "mix."
 
 
 <h2 id="options">OPTIONS</h2>
-<p><b>pammixmulti</b> accepts the following command-line options:</p>
 
-<dl>
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pammixmulti</b> recognizes the following
+command line options:
+
+<dl compact>
 <dt><b>--blend</b>=average|random|mask</dt>
 <dd>
 <p>This option specifies how the input images should be mixed to produce the
@@ -50,7 +50,7 @@ output is produced by selecting the corresponding pixel from one of the input
 images, chosen at random on a per-pixel basis.  With
 <b>--blend</b>=<code>mask</code>, each pixel in the output is produced by a
 weighted average of the corresponding pixels from all the input images based
-on the grayscale level of an additional mask image.</p>
+on the grayscale level of an additional mask image.
 </dd>
 
 <dt><b>--maskfile</b>=<i>filename</i></dt>
@@ -60,7 +60,7 @@ grayscale mask file to control the blending of each pixel.  (If the file is
 not grayscale, the first channel is treated as gray).  Where the mask file is
 black, the first image is selected. Where the mask file is white, the last
 image is selected.  Intermediate levels of gray select intermediate
-images.</p>
+images.
 </dd>
 
 <dt><b>--stdev</b>=<i>number</i></dt>
@@ -77,7 +77,7 @@ that includes roughly equal amounts of the corresponding pixel from images 1
 and 2 but less of the corresponding pixel from image 3.  As <i>number</i>
 tends towards the number of input images (going beyond that has diminishing
 impact), the output tends to look more
-like <b>--blend</b>=average. <i>number</i> defaults to 0.25.</p>
+like <b>--blend</b>=average. <i>number</i> defaults to 0.25.
 </dd>
 
 <dt><b>--randomseed</b> <i>integer</i>
@@ -91,39 +91,39 @@ like <b>--blend</b>=average. <i>number</i> defaults to 0.25.</p>
 
 <h2 id="arguments">ARGUMENTS</h2>
 
-<p>You supply the names of the files to mix as non-option arguments.</p>
+<p>You supply the names of the files to mix as non-option arguments.
 
 
 <h2 id="examples">EXAMPLES</h2>
 
-<p>Average a bunch of PPM images to produce a new PAM image:</p>
+<p>Average a bunch of PPM images to produce a new PAM image:
 <pre><code>
     pammixmulti input*.ppm &gt;output.ppm
 </code></pre>
 
 <p>Mix these same images by taking each pixel from a randomly selected input
-image:</p>
+image:
 
 <pre><code>
     pammixmulti --blend=random input*.ppm &gt;output.ppm
 </code></pre>
 
 <p>Use a mask image to control the fading among input images on a
-pixel-by-pixel basis:</p>
+pixel-by-pixel basis:
 
 <pre><code>
     pammixmulti --blend=mask --maskfile=mask.pgm &gt;output.pam \
        one.pam two.pam three.pam four.pam
 </code></pre>
 
-<p>Do the same but with more abrupt transitions:</p>
+<p>Do the same but with more abrupt transitions:
 
 <pre><code>
     pammixmulti --blend=mask --maskfile=mask.pgm --stdev=0.0 &gt;output.pam \
        one.pam two.pam three.pam four.pam
 </code></pre>
 
-<p>and now with more gradual transitions:</p>
+<p>and now with more gradual transitions:
 
 <pre><code>
     pammixmulti --blend=mask --maskfile=mask.pgm --stdev=1.0 &gt;output.pam \
@@ -131,14 +131,14 @@ pixel-by-pixel basis:</p>
 </code></pre>
 
 
-<H2 id="history">HISTORY</H2>
+<h2 id="history">HISTORY</h2>
 
 <p><b>pammixmulti</b> was new in Netpbm 10.85 (December 2018).
 
 
 <h2 id="author">AUTHOR</h2>
 
-<p>Copyright 2018 Scott Pakin, scott+pbm@pakin.org.</p>
+<p>Copyright 2018 Scott Pakin, scott+pbm@pakin.org.
 
 <h2 id="seealso">SEE ALSO</h2>
 
@@ -152,14 +152,14 @@ pixel-by-pixel basis:</p>
 <h2 id="index">Table Of Contents</h2>
 
 <ul>
-<li><a href="#synopsis">SYNOPSIS</a></li>
-<li><a href="#description">DESCRIPTION</a></li>
-<li><a href="#options">OPTIONS</a></li>
-<li><a href="#arguments">ARGUMENTS</a></li>
-<li><a href="#examples">EXAMPLES</a></li>
-<li><a href="#history">HISTORY</a></li>
-<li><a href="#author">AUTHOR</a></li>
-<li><a href="#seealso">SEE ALSO</a></li>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#arguments">ARGUMENTS</a>
+<li><a href="#examples">EXAMPLES</a>
+<li><a href="#history">HISTORY</a>
+<li><a href="#author">AUTHOR</a>
+<li><a href="#seealso">SEE ALSO</a>
 </ul>
 
 </body>
diff --git a/pampaintspill.html b/pampaintspill.html
index 935529f2..eeb1cac6 100644
--- a/pampaintspill.html
+++ b/pampaintspill.html
@@ -107,12 +107,12 @@ command line options:
 <h2 id="seealso">SEE ALSO</h2>
 
 <ul>
-<li><a href="pamgradient.html">pamgradient</a>
+<li><a href="pamgradient.html"><b>pamgradient</b></a>
 <li><a href="ppmmake.html"><b>ppmmake</b></a>,
 <li><a href="ppmrainbow.html"><b>ppmrainbow</b></a>,
 <li><a href="pgmramp.html"><b>pgmramp</b></a>,
 <li><a href="ppmpat.html"><b>ppmpat</b></a>,
-<li><a href="pam.html">pam</a>
+<li><a href="pam.html"><b>pam</b></a>
 </ul>
 
 <h2 id="history">HISTORY</h2>
@@ -138,4 +138,3 @@ command line options:
 
 </body>
 </html>
-
diff --git a/pamrgbatopng.html b/pamrgbatopng.html
index 8eac29a9..de924b81 100644
--- a/pamrgbatopng.html
+++ b/pamrgbatopng.html
@@ -1,25 +1,20 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamrgbtopng User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamrgbatopng</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamrgbtopng User Manual</title></head>
+<body>
+<h1>pamrgbatopng</h1>
 Updated: 28 June 2015
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
-pamrgbatopng - convert PAM color/transparency image to PNG
+pamrgbatopng - replaced by pamtopng
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamrgbatopng</B>
+<b>pamrgbatopng</b>
 [<i>pamfile</i>]
 
-<P>Minimum unique abbreviation of option is acceptable.  You may use double
-hyphens instead of single hyphen to denote options.  You may use white
-space in place of the equals sign to separate an option name from its value.
-
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -38,6 +33,6 @@ options.  But the one feature it had that <b>pnmtopng</b> lacked was the
 ability to recognize transparency in a PAM image.  <b>pamtopng</b> has that,
 as well as most of the features of <b>pnmtopng</b>.
 
-</BODY>
-</HTML>
+</body>
+</html>
 
diff --git a/pamshadedrelief.html b/pamshadedrelief.html
index 179313be..95e701cf 100644
--- a/pamshadedrelief.html
+++ b/pamshadedrelief.html
@@ -1,27 +1,27 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamshadedrelief User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamshadedrelief</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamshadedrelief User Manual</title></head>
+<body>
+<h1>pamshadedrelief</h1>
 Updated: 26 July 2014
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pamshadedrelief - generate shaded relief image from an elevation map
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamshadedrelief</B>
+<b>pamshadedrelief</b>
 
-[<B>-gamma</B> <I>g</I>]
+[<b>-gamma</b> <i>g</i>]
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
-<P><B>pamshadedrelief</B> creates a shaded relief image from an elevation map.
+<p><b>pamshadedrelief</b> creates a shaded relief image from an elevation map.
 A shaded relief image is a visual image of terrain, showing the terrain as if
 illuminated by oblique light and viewed from above, so that the brightess of
 each spot depends upon its slope.  A common example of a shaded relief image
@@ -43,88 +43,92 @@ landscape.
 </pre>
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamshadedrelief</b> recognizes the following
+command line option:
 
-<DL COMPACT>
-<DT><B>-gamma</B> <I>factor</I>
+<dl compact>
+<dt><b>-gamma</b> <i>factor</i>
+<dt><b>-g</b> <i>factor</i>
 
-<DD>The specified <I>factor</I> is used to gamma adjust the image in
-the same manner as performed by <B>pnmgamma</B>.  The default value is
+<dd>The specified <i>factor</i> is used to gamma adjust the image in
+the same manner as performed by <b>pnmgamma</b>.  The default value is
 1.0, which results in a medium contrast image.  Values larger than 1
 lighten the image and reduce contrast, while values less than 1 darken
 the image, increasing contrast.
 
-<P>Note that this is separate from the gamma correction that is part of the
-definition of the PAM GRAYSCALE format.  The image <B>pamshadedrelief</B>
+<p>Note that this is separate from the gamma correction that is part of the
+definition of the PAM GRAYSCALE format.  The image <b>pamshadedrelief</b>
 generates is a genuine, gamma-corrected PAM GRAYSCALE image in any case.  This
 option simply changes the contrast and may compensate for a display device
 that does not correctly render PAM GRAYSCALE images.
 
-</DL>
+</dl>
 
-<H2 id="designnotes">DESIGN NOTES</H2>
+<h2 id="designnotes">DESIGN NOTES</h2>
 
-The<B>-gamma</B> option isn't really necessary since you can achieve
-the same effect by piping the output from <B>pamshadedrelief</B> through
-<B>pnmgamma</B>.  However, <B>pamshadedrelief</B> performs an internal gamma
+The<b>-gamma</b> option isn't really necessary since you can achieve
+the same effect by piping the output from <b>pamshadedrelief</b> through
+<b>pnmgamma</b>.  However, <b>pamshadedrelief</b> performs an internal gamma
 map anyway in the process of rendering the elevation array into the PAM
 GRAYSCALE format, so there's no additional overhead in allowing an additional
 gamma adjustment.
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="ppmrelief.html">ppmrelief</A></B>
+<b><a href="ppmrelief.html">ppmrelief</a></b>
 
-<B><A HREF="pnmgamma.html">pnmgamma</A></B>,
+<b><a href="pnmgamma.html">pnmgamma</a></b>,
 
-<B><A HREF="pnmsmooth.html">pnmsmooth</A></B>
+<b><a href="pnmsmooth.html">pnmsmooth</a></b>
 
-<B><A HREF="pamcrater.html">pamcrater</A></B>
+<b><a href="pamcrater.html">pamcrater</a></b>
 
-<B><A HREF="pam.html">pam</A></B>,
+<b><a href="pam.html">pam</a></b>,
 
 
-<H2>AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 <p><b>pgmcrater</b>, from which this is derived, was written by John Walker:
 
-<PRE>
+<pre>
 John Walker
 Autodesk SA
 Avenue des Champs-Montants 14b
 CH-2074 MARIN
 Suisse/Schweiz/Svizzera/Svizra/Switzerland
-    <B>Usenet:</B><A HREF="mailto:kelvin@Autodesk.com">kelvin@Autodesk.com</A>
-    <B>Fax:</B>038/33 88 15
-    <B>Voice:</B>038/33 76 33
-</PRE>
+    <b>Usenet:</b><a href="mailto:kelvin@Autodesk.com">kelvin@Autodesk.com</a>
+    <b>Fax:</b>038/33 88 15
+    <b>Voice:</b>038/33 76 33
+</pre>
 
-<P>Permission to use, copy, modify, and distribute this software and
+<p>Permission to use, copy, modify, and distribute this software and
 its documentation for any purpose and without fee is hereby granted,
 without any conditions or restrictions.  This software is provided
 "as is" without express or implied warranty.
 
 
-<H2 id="history">HISTORY</H2>
+<h2 id="history">HISTORY</h2>
 
 <p><b>pgmcrater</b> was split into <b>pamshadedrelief</b> and <b>pamcrater</b>
 in Netpbm 10.68 (September 2014).  See the history section of the
 <b>pamcrater</b> manual for details.
 
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#designnotes">DESIGN NOTES</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-<LI><A HREF="#history">HISTORY</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#designnotes">DESIGN NOTES</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
diff --git a/pamsplit.html b/pamsplit.html
index 15972eb9..489f8f4e 100644
--- a/pamsplit.html
+++ b/pamsplit.html
@@ -1,22 +1,22 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamsplit User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamsplit</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamsplit User Manual</title></head>
+<body>
+<h1>pamsplit</h1>
 Updated: 11 August 2011
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pamsplit - split a multi-image Netpbm file into single-image files
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamsplit</B>
+<b>pamsplit</b>
 
-[<I>netpbmfile</I>
+[<i>netpbmfile</i>
 
-[<I> output_file_pattern</I>]]
+[<i> output_file_pattern</i>]]
 
 [<b>-padname=</b><i>n</i>]
 
@@ -25,25 +25,25 @@ hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
 <p><b>pamsplit</b> reads a PNM or PAM stream as input.  It copies each image
 in the input into a separate file, in the same format.
 
-<P><I>netpbmfile</I> is the file name of the input file, or
-<B>-</B> to indicate Standard Input.  The default is Standard Input.
+<p><i>netpbmfile</i> is the file name of the input file, or
+<b>-</b> to indicate Standard Input.  The default is Standard Input.
 
-<P><I>output_file_pattern</I> tells how to name the output files.  It
+<p><i>output_file_pattern</i> tells how to name the output files.  It
 is the file name of the output file, except that the first
 occurrence of "%d" in it is replaced by the image sequence
 number in unpadded ASCII decimal, with the sequence starting at 0.  If
-there is no "%d" in the pattern, <B>pamsplit</B> fails.
+there is no "%d" in the pattern, <b>pamsplit</b> fails.
 
-<P>The default output file pattern is "image%d".
+<p>The default output file pattern is "image%d".
 
-<p>The <b>-padname</b> option specifies to how many characters you
+<p>The <b>-padname</b> option specifies how many characters you
 want the image sequence number in the output file name padded with
 zeroes.  <b>pamsplit</b> adds leading zeroes to the image sequence
 number to get up to at least that number of characters.  This is just
@@ -52,14 +52,10 @@ example, <kbd>pamsplit - outputfile%d.ppm -padname=3</kbd> would yield
 output filenames <b>outputfile000.ppm</b>, <b>outputfile001.ppm</b>,
 etc.
 
-<p>The default is no padding (equivalent to <b>-padname=0</b>).
-<P>The <b>-padname</b> option was new in Netpbm 10.23 (July 2004).
-Before that, there was never any padding.
-
 
-<P>Note that to do the reverse operation (combining multiple
+<p>Note that to do the reverse operation (combining multiple
 single-image Netpbm files into a multi-image one), there is no special
-Netpbm program.  Just use <B>cat</B>.
+Netpbm program.  Just use <b>cat</b>.
 
 <p>If you just want to find out basic information about the images in a
 stream, you can use <b>pamfile</b> on the stream.
@@ -71,21 +67,44 @@ them, use <b>pampick</b>.
 files, use <b>pamexec</b>.
 
 
-<H2 id="seealso">SEE ALSO</H2>
-
-<B><A HREF="pamfile.html">pamfile</A></B>,
-<B><A HREF="pampick.html">pampick</A></B>,
-<B><A HREF="pamexec.html">pamexec</A></B>,
-<B><A HREF="pnm.html">pnm</A></B>,
-<B><A HREF="pam.html">pam</A></B>,
-<B>cat</b> man page
-
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-</UL>
-</BODY>
-</HTML>
+<h2 id="options">OPTIONS</h2>
+
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamsplit</b> recognizes the following
+command line option:
+
+<dl compact>
+<dt><b>-padname=</b><i>n</i>
+
+<dd>Specify the width (i.e. number of digits) of the image sequence
+number field in the filenames of the output files.  The image
+sequence will be padded with leading zeroes to achieve the stated
+width.
+
+<p>The default is no padding (equivalent to <b>-padname=0</b>).
+
+<p>The <b>-padname</b> option was new in Netpbm 10.23 (July 2004).
+Before that, there was never any padding.
+
+</dl>
+
+<h2 id="seealso">SEE ALSO</h2>
+
+<b><a href="pamfile.html">pamfile</a></b>,
+<b><a href="pampick.html">pampick</a></b>,
+<b><a href="pamexec.html">pamexec</a></b>,
+<b><a href="pnm.html">pnm</a></b>,
+<b><a href="pam.html">pam</a></b>,
+<b>cat</b> man page
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+</ul>
+</body>
+</html>
diff --git a/pamstereogram.html b/pamstereogram.html
index d2a67f8e..759ca28d 100644
--- a/pamstereogram.html
+++ b/pamstereogram.html
@@ -1,22 +1,14 @@
-<!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<title>Pamstereogram User Manual</title>
-</head>
-
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamstereogram User Manual</title></head>
 <body>
-
 <h1>pamstereogram</h1>
+Updated: 10 May 2020
+<br>
+<a href="#index">Table Of Contents</a>
 
-<p>Updated: 10 May 2020</p>
-
-<p><a href="#contents">Table Of Contents</a></p>
-
+<h2>NAME</h2>
 
-<h2 id="name">NAME</h2>
-
-<p>pamstereogram - create a single-image stereogram from a PAM
-depth map</p>
+pamstereogram - create a single-image stereogram from a PAM depth map
 
 <h2 id="synopsis">SYNOPSIS</h2>
 
@@ -46,13 +38,13 @@ depth map</p>
 [<b>-randomseed=</b><i>integer</i>]
 [<b>-tileable</b>]
 [<i>infile</i>]
-</p>
+
 
 
 
 <h2 id="description">DESCRIPTION</h2>
 
-<p>This program is part of <a href="index.html">Netpbm</a>.</p>
+<p>This program is part of <a href="index.html">Netpbm</a>.
 
 <p><b>pamstereogram</b> inputs a depth map (a map of the distances
 from your eye of the points in a scene) and outputs a single-image
@@ -62,22 +54,22 @@ eyes. What's exciting about single-image stereograms is that they
 don't require special glasses to view, although it does require a bit
 of practice to train your eyes to unfocus properly.  The
 <b>pamstereogram</b> program provides a wealth of control over how the
-stereogram is generated, including the following:</p>
+stereogram is generated, including the following:
 
 <ul>
-<li>black and white, grayscale, or color output</li>
+<li>black and white, grayscale, or color output
 
 <li>single-image random-dot stereograms (SIRDS), single-image
 stereograms (SIS) using a tiled image, or mapped-texture stereograms
-(MTS)</li>
+(MTS)
 
-<li>images targeting a given device resolution and eye separation</li>
+<li>images targeting a given device resolution and eye separation
 
-<li>optional guide boxes to assist in focusing</li>
+<li>optional guide boxes to assist in focusing
 
-<li>the ability to trade off depth levels for easier viewing</li>
+<li>the ability to trade off depth levels for easier viewing
 
-<li>choice of wall-eyed or cross-eyed stereograms</li>
+<li>choice of wall-eyed or cross-eyed stereograms
 
 </ul>
 <p>The output is a PAM image on standard output.  Options control
@@ -87,48 +79,55 @@ if you will use the image as input to a current Netpbm program, but
 many other programs don't know what a PAM is.
 
 <p>To make a red/green type of stereogram (that you view with 3-D
-glasses) instead, see <b>ppm3d</b>.</p>
+glasses) instead, see <b>ppm3d</b>.
 
 
 <h2 id="options">OPTIONS</h2>
 
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamstereogram</b> recognizes the following
+command line options:
+
 <p>You may use either single or double hyphens to denote options.  You
 may use either whitespace or an equals sign to separate an option name
-from its value.</p>
+from its value.
 
 <dl>
 
-<dt><b>-verbose</b></dt>
+<dt><b>-verbose</b>
 <dd>Display messages about image sizes and formats and properties
-of the stereogram being generated.</dd>
+of the stereogram being generated.
 
-<dt><b>-blackandwhite</b></dt>
+<dt><b>-blackandwhite</b>
 <dd>Produce a single-image random-dot black-and-white stereogram.
-This is the default.</dd>
+This is the default.
 
-<dt><b>-grayscale</b></dt>
-<dd>Produce a single-image random-dot grayscale stereogram.</dd>
+<dt><b>-grayscale</b>
+<dd>Produce a single-image random-dot grayscale stereogram.
 
-<dt><b>-color</b></dt>
-<dd>Produce a single-image random-dot color stereogram.</dd>
+<dt><b>-color</b>
+<dd>Produce a single-image random-dot color stereogram.
 
-<dt><b>-maxval=</b><i>value</i></dt>
+<dt><b>-maxval=</b><i>value</i>
 <dd>Designate the maximum value of each gray/color component, i.e.
 the color resolution. Smaller values make the output image have
 smaller numbers of unique grays/colors. If you don't specify
 <b>-maxval</b>, <b>pamstereogram</b> uses the maxval of the input
-image. This option has no effect with <b>-blackandwhite</b>.</dd>
+image. This option has no effect with <b>-blackandwhite</b>.
 
-<dt><b>-patfile=</b><i>pamfile</i></dt>
+<dt><b>-patfile=</b><i>pamfile</i>
 <dd>Specify an image to use as a repeated background pattern for
 the stereogram instead of a random-dot pattern. Intricate images
 generally produce a crisper 3-D effect that simpler images. The
 output file will have the same maxval and format (black and white,
 grayscale or color) as the pattern file. You cannot specify the
 <b>-patfile</b> option along with <b>-blackandwhite</b>,
-<b>-grayscale</b>, <b>-color</b>, or <b>-maxval</b>.</dd>
+<b>-grayscale</b>, <b>-color</b>, or <b>-maxval</b>.  The
+<b>-verbose</b> option will give you information on the ideal
+dimensions of the pattern file.
 
-<dt><b>-xbegin=</b><i>pixels</i></dt>
+<dt><b>-xbegin=</b><i>pixels</i>
 <dd>Specify the horizontal coordinate at which to begin stereogram generation.
 The background pattern will be minimally distorted at this point and more
 distorted at greater distances.  Consider using this in conjunction
@@ -142,7 +141,7 @@ and <b>pamstereogram</b> actually ignores it with respect to <b>-texfile</b>
 
 <p>This option was new in Netpbm 10.71 (June 2015).
 
-<dt><b>-texfile=</b><i>pamfile</i></dt>
+<dt><b>-texfile=</b><i>pamfile</i>
 <dd>Specify an image to use as the texture for a mapped-texture
 stereogram.  The idea is that the depth-map image provides the depth
 values of the 3-D object/scene while the texture image provides the
@@ -151,10 +150,10 @@ the depth-map image.  (Note that it's required to have the same
 dimensions.)  The texture image's background color is ignored when
 blending colors.
 
-<p>This option was new in Netpbm 10.53 (December 2010).</p>
-</dd>
+<p>This option was new in Netpbm 10.53 (December 2010).
+
 
-<dt><b>-bgcolor=</b><i>color</i></dt>
+<dt><b>-bgcolor=</b><i>color</i>
 <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
@@ -162,10 +161,10 @@ the color as described for the
 routine</a>.  The <b>-bgcolor</b> option is meaningful only in conjunction
 with <b>-texfile</b>.
 
-<p>This option was new in Netpbm 10.53 (December 2010).</p>
-</dd>
+<p>This option was new in Netpbm 10.53 (December 2010).
 
-<dt><b>-smoothing=</b><i>pixels</i></dt>
+
+<dt><b>-smoothing=</b><i>pixels</i>
 <dd>When used without <b>-texfile</b>, attempt to eliminate artifacts
 introduced by edges in the depth map if <i>pixels</i> is greater than zero.
 
@@ -176,29 +175,29 @@ by the stereogram's color constraints when producing a mapped-texture
 stereogram.  In this case, the <b>-smoothing</b> option is helpful
 when the texture image includes smooth color transitions (as in a
 photograph) but makes crisp texture images (as in a line drawing)
-appear blurry.</p>
+appear blurry.
 
 <p>This option was new in Netpbm 10.53 (December 2010).  Before
-Netpbm 10.61 (December 2012), it has no effect without <b>-texfile</b>.</p>
-</dd>
+Netpbm 10.61 (December 2012), it has no effect without <b>-texfile</b>.
+
 
-<dt><b>-xshift=</b><i>pixels</i></dt>
+<dt><b>-xshift=</b><i>pixels</i>
 <dd>Shift the pattern image (designated by <b>-patfile</b>) to the
 right by <i>pixels</i> pixels (default: 0).
-<!-- <b>-xshift</b> is helpful when creating "true-color" stereograms. -->
-This option is valid only along with <b>-patfile</b>.</dd>
+<!-- -xshift is helpful when creating "true-color" stereograms. -->
+This option is valid only along with <b>-patfile</b>.
 
-<dt><b>-yshift</b> <i>pixels</i></dt>
+<dt><b>-yshift</b> <i>pixels</i>
 <dd>Shift the pattern image (designated by <b>-patfile</b>)
 downwards by <i>pixels</i> pixels (default: 0). This option is
-valid only along with <b>-patfile</b>.</dd>
+valid only along with <b>-patfile</b>.
 
-<dt><b>-magnifypat=</b><i>scale</i></dt>
+<dt><b>-magnifypat=</b><i>scale</i>
 <dd>Magnify each pixel in the pattern file or each random dot by
 integral scaling factor <i>scale</i>. Note that
 <b>pamstereogram</b> applies the pattern magnification
 <em>after</em> pattern shifting (<b>-xshift</b> and
-<b>-yshift</b>).</dd>
+<b>-yshift</b>).
 
 <dt><b>-guidebottom</b>
 <dd>
@@ -212,7 +211,7 @@ square. At that point, a crisp, 3-D image will appear.
 <p>This option was new in Netpbm 10.61 (December 2012).  Before that,
 the presence of <b>-guidesize</b>, with a positive value, has the same
 effect.
-</dd>
+
 
 <dt><b>-guidetop</b>
 <dd>
@@ -222,7 +221,7 @@ Same as <b>-guidebottom</b>, except the guides go at the top of the image.
 the presence of <b>-guidesize</b>, with a negative value, has the same
 effect.
 
-<dt><b>-guidesize=</b><i>pixels</i></dt>
+<dt><b>-guidesize=</b><i>pixels</i>
 
 <dd>The size (width and height) of each guide box.
 
@@ -237,15 +236,15 @@ too, and if you specify it with a negative value, it behaves as if you
 specified <b>-guidetop</b> and specified <b>guidesize</b> with the absolute
 value of that negative value.
 
-<dt><b>-dpi=</b><i>resolution</i></dt>
+<dt><b>-dpi=</b><i>resolution</i>
 <dd>Specify the resolution of the output device in dots per inch.
 The default is 100 DPI, which represents a fairly crisp screen
 resolution.
 
-<p>Before Netpbm 10.53 (December 2010), the default was 96 DPI.</p>
-</dd>
+<p>Before Netpbm 10.53 (December 2010), the default was 96 DPI.
+
 
-<dt><b>-crosseyed</b></dt>
+<dt><b>-crosseyed</b>
 <dd>Invert the gray levels in the depth map (input image) so that the 3-D
 image pops out of the page where it would otherwise sink into the page and
 vice versa. Some people are unable to diverge their eyes and can only cross
@@ -256,10 +255,10 @@ colors are farther from the eye.
 
 <p>Before Netpbm 10.53 (December 2010), <b>pamstereogram</b> used higher
 (lighter) numbers for things closer to the eye <em>without</em>
-<b>-crosseyed</b> and vice versa.</p>
-</dd>
+<b>-crosseyed</b> and vice versa.
 
-<dt><b>-makemask</b></dt>
+
+<dt><b>-makemask</b>
 <dd>Instead of a stereogram, output a PAM mask image showing
 coloring constraints. New pixels will be taken from the pattern
 file where the mask is black. Copies of existing pixels will be
@@ -267,30 +266,30 @@ taken from the pattern file where the mask is white. The
 <b>-makemask</b> option can be used to help create more
 sophisticated pattern files (to use with <b>-patfile</b>) Note that
 <b>-makemask</b> ignores <b>-magnifypat</b>; it always produces
-masks that assume a pattern magnification of 1.</dd>
+masks that assume a pattern magnification of 1.
 
-<dt><b>-eyesep=</b><i>inches</i></dt>
+<dt><b>-eyesep=</b><i>inches</i>
 <dd>Specify the separation in inches between your eyes. The
 default, 2.5 inches (6.4 cm), should be sufficient for most people
-and probably doesn't need to be changed.</dd>
+and probably doesn't need to be changed.
 
-<dt><b>-depth=</b><i>fraction</i></dt>
+<dt><b>-depth=</b><i>fraction</i>
 <dd>Specify the output image's depth of field. That is,
 <i>fraction</i> represents the fractional distance of the near
 plane from the far plane. Smaller numbers make the 3-D image easier
 to perceive but flatter. Larger numbers make the 3-D image more
 difficult to perceive but deeper. The default, 0.3333, generally
-works fairly well.</dd>
+works fairly well.
 
-<dt><b>-planes=</b><i>near_pixels</i>,<i>far_pixels</i></dt>
+<dt><b>-planes=</b><i>near_pixels</i>,<i>far_pixels</i>
 <dd>Explicitly specify the distance between repeated pixels in the near plane
 and in the far plane.  This is an alternative to
 <b>-eyesep</b> and <b>-depth</b>.  The following equalities hold:
 
 <ul>
-  <li><i>eyesep</i> = 2 * <i>far</i></li>
+  <li><i>eyesep</i> = 2 * <i>far</i>
   <li><i>depth</i> = 2 * (<i>far</i> &minus; <i>near</i>) /
-      (2 * <i>far</i> &minus; <i>near</i>)</li>
+      (2 * <i>far</i> &minus; <i>near</i>)
 </ul>
 
 <p>The number of distinct 3-D depths is <i>far</i>
@@ -300,26 +299,25 @@ parameters (distance between eyes and tradeoff between perceptibility
 and depth) while <b>-planes</b> is a more computer-centric way (pixel
 distances in the resulting stereogram).
 
-<p>This option was new in Netpbm 10.59 (June 2012).</p>
-</dd>
+<p>This option was new in Netpbm 10.59 (June 2012).
+
 
-<dt><b>-randomseed=</b><i>integer</i></dt>
+<dt><b>-randomseed=</b><i>integer</i>
 <dd>Specify a seed to be used for the random number generator.
 The default is to use a seed based on the time of day, to one second
 granularity.
 
 <p>It is useful to specify the seed if you want to create reproducible
 results.  With the same random seed, you should get identical results
-every time you run <b>pamstereogram</b>.</p>
+every time you run <b>pamstereogram</b>.
 
 <p>This is irrelevant if you use a pattern file (<b>-patfile</b>
 option), because there is no random element to <b>pamstereogram</b>'s
-behavior.</p>
+behavior.
 
-<p>This option was new in Netpbm 10.32 (February 2006).</p>
-</dd>
+<p>This option was new in Netpbm 10.32 (February 2006).
 
-<dt><b>-tileable</b></dt>
+<dt><b>-tileable</b>
 
 <dd>Make the generated image horizontally tileable.  This works by
 blending a left-to-right rendering (the equivalent
@@ -327,7 +325,6 @@ of <b>-xbegin</b>=0) with a right-to-left rendering (the equivalent
 of <b>-xbegin</b>=<i>width&minus;1</i>).
 
 <p>This option was new in Netpbm 10.91 (June 2020).
-</dd>
 
 </dl>
 
@@ -336,7 +333,7 @@ of <b>-xbegin</b>=<i>width&minus;1</i>).
 
 <p>The only parameter, <i>infile</i>, is the name of an input file
 that is a depth map image. If you don't specify <i>infile</i>, the
-input is from standard input.</p>
+input is from standard input.
 
 <p>The input is a PAM image of depth 1. Each sample represents the
 distance from the eye that the 3-D image at that location should
@@ -347,10 +344,10 @@ be.  Lower (darker) numbers mean further from the eye.
 <h3 id="inputimages">Input Images</h3>
 
 <p><b>pamstereogram</b> pays no attention to the image's tuple type and
-ignores all planes other than plane 0.</p>
+ignores all planes other than plane 0.
 
 <p>Like any Netpbm program, <b>pamstereogram</b> will accept PNM
-input as if it were the PAM equivalent.</p>
+input as if it were the PAM equivalent.
 
 <h3 id="mappedtexture">Mapped-texture Stereograms</h3>
 
@@ -358,12 +355,12 @@ input as if it were the PAM equivalent.</p>
 drawn with true colors.  Unlike a SIRDS or tiled-image SIS, however,
 the image portrayed by an MTS is apparent in normal 2-D viewing.  It
 appears repeated multiple times and overlapped with itself, but it is
-not hidden.</p>
+not hidden.
 
 <p>You create an MTS with <b>pamstereogram</b> by passing the filename
 of a PAM "texture image" with a <b>-texfile</b> option.  A
 texture image portrays the same 3-D object as the depth-map image but
-indicates the colors that the program should apply to the object.</p>
+indicates the colors that the program should apply to the object.
 
 <p><b>pamstereogram</b> ignores the texture image's background color when it
 overlaps copies of the 3-D object.  This prevents, for example, a bright-red
@@ -373,32 +370,32 @@ object remains bright red.  A consequence of this feature is that an MTS looks
 best when the objects in the texture image have a crisp outline.  Smooth
 transitions to the background color result in unwanted color artifacts around
 edges because the program ignores only <em>exact</em> matches with the
-background color.</p>
+background color.
 
 <p>You should specify a larger-than-normal value for <b>-eyesep</b>
 (and/or <b>-dpi</b>) when producing an MTS.  Otherwise, the 3-D object will
 repeat so many times that most colored pixels will overlap other colored
-pixels, reducing the number of true-colored pixels that remain.</p>
+pixels, reducing the number of true-colored pixels that remain.
 
 <p>An MTS can employ a background pattern (<b>-patfile</b>).  In this
 case, <b>pamstereogram</b> replaces background pixels with pattern pixels in
-the final step of generating the image.</p>
+the final step of generating the image.
 
 
 <h3 id="notes_misc">Miscellaneous</h3>
 
 <p>A good initial test is to input an image consisting of a solid
 shape of distance 0 within a large field of maximum distance (e.g., a
-white square on a black background).</p>
+white square on a black background).
 
 <p>With the default values for <b>-dpi</b> and <b>-eyesep</b>, pattern
-images that are 128 pixels wide can tile seamlessly.</p>
+images that are 128 pixels wide can tile seamlessly.
 
 
 <h2 id="examples">EXAMPLES</h2>
 
 <p>Generate a SIRDS out of small, brightly colored squares and
-prepare it for display on an 87 DPI monitor:</p>
+prepare it for display on an 87 DPI monitor:
 
 <pre>
     pamstereogram depthmap.pam \
@@ -409,7 +406,7 @@ prepare it for display on an 87 DPI monitor:</p>
 <p>Generate a SIS by tiling a PPM file (a prior run with
 <b>-verbose</b> indicates how wide the pattern file should be for
 seamless tiling, although any width is acceptable for producing
-SISes):</p>
+SISes):
 
 <pre>
     pamstereogram depthmap.pam -patfile mypattern.ppm &gt;3d.pam
@@ -419,7 +416,7 @@ SISes):</p>
 <p>Generate an MTS by associating colors with a depth-mapped object
 (using a large eye separation to reduce the number of repetitions of
 the texture image) and twice smoothing over background-colored
-speckles:</p>
+speckles:
 
 <pre>
     pamstereogram depthmap.pam \
@@ -430,25 +427,25 @@ speckles:</p>
 
 <h2 id="seealso">SEE ALSO</h2>
 <ul>
-<li><a href="pam.html">pam</a></li>
+<li><a href="pam.html">pam</a>
 
-<li><a href="pamsistoaglyph.html">pamsistoaglyph</a></li>
+<li><a href="pamsistoaglyph.html">pamsistoaglyph</a>
 
-<li><a href="ppm3d.html">ppm3d</a></li>
+<li><a href="ppm3d.html">ppm3d</a>
 
 <li>Harold W. Thimbleby, Stuart Inglis, and Ian H. Witten.
 <em>Displaying 3D Images: Algorithms for Single Image Random Dot
 Stereograms</em>. In IEEE Computer, <strong>27</strong>(10):38-48,
 October 1994.  DOI: <a
-href="http://dx.doi.org/10.1109/2.318576">10.1109/2.318576</a>.</li>
+href="http://dx.doi.org/10.1109/2.318576">10.1109/2.318576</a>.
 
 <li>W. A. Steer.
 <em>Stereograms: Technical Details</em>.
-URL: <a href="http://www.techmind.org/stereo/stech.html">http://www.techmind.org/stereo/stech.html</a>.</li>
+URL: <a href="http://www.techmind.org/stereo/stech.html">http://www.techmind.org/stereo/stech.html</a>.
 </ul>
 
 
-<h2><a id="history">HISTORY</a></h2>
+<h2 id="history">HISTORY</h2>
 
 <p><b>pamstereogram</b> was new in Netpbm 10.22 (April 2004), but probably
 broken beyond usability until Netpbm 10.32 (February 2006) and Netpbm 10.26.23
@@ -459,26 +456,25 @@ broken beyond usability until Netpbm 10.32 (February 2006) and Netpbm 10.26.23
 Netpbm 10.61 (December 2012).
 
 
-<h2><a id="author">AUTHOR</a></h2>
-<p>Copyright &copy; 2006-2020 Scott Pakin, <a href="mailto:scott+pbm@pakin.org">scott+pbm@pakin.org</a>.</p>
+<h2 id="author">AUTHOR</h2>
+<p>Copyright &copy; 2006-2020 Scott Pakin, <a href="mailto:scott+pbm@pakin.org">scott+pbm@pakin.org</a>.
 
-<h2><a id="contents">Table Of Contents</a></h2>
+<h2 id="index">Table Of Contents</h2>
 <ul>
-<li><a href="#synopsis">SYNOPSIS</a></li>
-<li><a href="#description">DESCRIPTION</a></li>
-<li><a href="#options">OPTIONS</a></li>
-<li><a href="#parameters">PARAMETERS</a></li>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#parameters">PARAMETERS</a>
 <li><a href="#notes">NOTES</a>
-<ul>
-  <li><a href="#inputimages">Input Images</a></li>
-  <li><a href="#mappedtexture">Mapped-texture Stereograms</a></li>
-  <li><a href="#notes_misc">Miscellaneous</a></li>
+  <ul>
+  <li><a href="#inputimages">Input Images</a>
+  <li><a href="#mappedtexture">Mapped-texture Stereograms</a>
+  <li><a href="#notes_misc">Miscellaneous</a>
   </ul>
-</li>
-<li><a href="#examples">EXAMPLES</a></li>
-<li><a href="#seealso">SEE ALSO</a></li>
-<li><a href="#history">HISTORY</a></li>
-<li><a href="#author">AUTHOR</a></li>
+<li><a href="#examples">EXAMPLES</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+<li><a href="#author">AUTHOR</a>
 </ul>
 </body>
 </html>
diff --git a/pamsumm.html b/pamsumm.html
index 3e0a4694..d8cab088 100644
--- a/pamsumm.html
+++ b/pamsumm.html
@@ -1,17 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamsumm User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamsumm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamsumm User Manual</title></head>
+<body>
+<h1>pamsumm</h1>
 Updated: 26 October 2012
-<BR>
+<br>
 
-<A HREF="#index">Table Of Contents</A>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 pamsumm - Summarize the samples in a Netpbm image arithmetically
 
-<H2 id="synopsis">SYNOPSIS</H2>
-<B>pamsumm</B>
+<h2 id="synopsis">SYNOPSIS</h2>
+<b>pamsumm</b>
 {
 <b>-sum</b> |
 <b>-mean</b> |
@@ -20,13 +20,13 @@ pamsumm - Summarize the samples in a Netpbm image arithmetically
 }
 [<b>-normalize</b>]
 [<b>-brief</b>]
-[<I>imagefile</I>]
+[<i>imagefile</i>]
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>All options can be abbreviated to their shortest unique prefix.
 You may use two hyphens instead of one.  You may separate an option
 name and its value with white space instead of an equals sign.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -51,36 +51,41 @@ want to summarize a particular plane, use <b>pamchannel</b> to
 extract it and then <b>pamsumm</b>.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
+
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamsumm</b> recognizes the following
+command line options:
 
 <p>You must specify exactly one of <b>-sum</b>, <b>-mean</b>,
 <b>-min</b>, or <b>-max</b>.
 
-<DL COMPACT>
-<DT><B>-sum</b>
+<dl compact>
+<dt><b>-sum</b>
 
-<DD>
-     <P>This option makes the summary function addition.
+<dd>
+     <p>This option makes the summary function addition.
 
-<DT><B>-mean</b>
+<dt><b>-mean</b>
 
-<DD>
-     <P>This option makes the summary function arithmetic mean.
+<dd>
+     <p>This option makes the summary function arithmetic mean.
 
-<DT><B>-min</b>
+<dt><b>-min</b>
 
-<DD>
-     <P>This option makes the summary function arithmetic minimum.
+<dd>
+     <p>This option makes the summary function arithmetic minimum.
 
-<DT><B>-max</b>
+<dt><b>-max</b>
 
-<DD>
-     <P>This option makes the summary function arithmetic maximum.
+<dd>
+     <p>This option makes the summary function arithmetic maximum.
 
-<DT><B>-normalize</b>
+<dt><b>-normalize</b>
 
-<DD>
-     <P>This option causes each sample to be normalized to a fraction
+<dd>
+     <p>This option causes each sample to be normalized to a fraction
      (in the range 0..1) so the result is independent of the image's
      maxval.  E.g. if you request the mean of an image which has maxval
      200 and all the samples have value 50, <b>pamsumm</b> will give you
@@ -106,12 +111,12 @@ extract it and then <b>pamsumm</b>.
 
 <p>This option was new in Netpbm 10.22 (April 2004)
 
-</DL>
+</dl>
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="pamsummcol.html">pamsummcol</A></B>,
-<B><A HREF="pam.html">pam</A></B>,
+<b><a href="pamsummcol.html">pamsummcol</a></b>,
+<b><a href="pam.html">pam</a></b>,
 
 <h2 id="history">HISTORY</h2>
 
@@ -119,14 +124,14 @@ extract it and then <b>pamsumm</b>.
 2004).
 
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF=#history>HISTORY</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
diff --git a/pamtable.html b/pamtable.html
index 202eec0b..9580a135 100644
--- a/pamtable.html
+++ b/pamtable.html
@@ -1,23 +1,23 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamtable User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamtable</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamtable User Manual</title></head>
+<body>
+<h1>pamtable</h1>
 Updated: 15 April 2017
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pamtable - print the raster as a table of numerical sample values
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamtable</B>
+<b>pamtable</b>
 
-[<I>netpbmfile</I>]
+[<i>netpbmfile</i>]
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -26,12 +26,12 @@ sample values.  For example, a 5-pixel wide, 2-pixel high rainbow (black, red,
 green, blue, white) PPM image with maxval 255 would appear as follows:
 
 <pre>
-<tt>
+<span style="font-family: monospace">
 
         0   0   0|255   0   0|  0 255   0|  0   0 255|255 255 255
         0   0   0|255   0   0|  0 255   0|  0   0 255|255 255 255
 
-</tt>
+</span>
 </pre>
 
 
@@ -53,7 +53,7 @@ number of spaces required to print the maxval of the image.
 <p>If you want the samples to print more densely, use <b>pamdepth</b> to
 reduce the maxval (thus making the decimal numbers for the samples narrower).
 
-<P>The <b>less</b> program (not part of Netpbm) is good for browsing through
+<p>The <b>less</b> program (not part of Netpbm) is good for browsing through
 the table.  Use its <b>--chop-long-lines</b> option and use cursor movement
 keys to scroll around in the image.
 
@@ -67,33 +67,36 @@ comes from Standard Input.
 
 <h2 id="options">OPTIONS</h2>
 
-<p>None.
+<p>There are no command line options defined specifically
+for <b>pamtable</b>, but it recognizes the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pamfile.html">pamfile</A>,
-<A HREF="pamcut.html">pamcut</A>,
-<A HREF="pamchannel.html">pamchannel</A>,
-<A HREF="pnm.html">pnm</A>,
-<A HREF="pam.html">pam</A>,
-<A HREF="pamslice.html">pamslice</A>,
-<A HREF="ppmtoarbtxt.html">ppmtoarbtxt</A>,
-<A HREF="ppmtoterm.html">ppmtoterm</A>,
+<a href="pamfile.html">pamfile</a>,
+<a href="pamcut.html">pamcut</a>,
+<a href="pamchannel.html">pamchannel</a>,
+<a href="pnm.html">pnm</a>,
+<a href="pam.html">pam</a>,
+<a href="pamslice.html">pamslice</a>,
+<a href="ppmtoarbtxt.html">ppmtoarbtxt</a>,
+<a href="ppmtoterm.html">ppmtoterm</a>,
 
 
 <h2 id="history">HISTORY</h2>
 
 <p><b>pamtable</b> was new in Netpbm 10.79 (June 2017).
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#seealso">ARGUMENTS</A>
-<LI><A HREF="#seealso">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#arguments">ARGUMENTS</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
diff --git a/pamtompfont.html b/pamtompfont.html
index e31538cb..aab69cd1 100644
--- a/pamtompfont.html
+++ b/pamtompfont.html
@@ -1,23 +1,23 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamtompfont User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamtompfont</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamtompfont User Manual</title></head>
+<body>
+<h1>pamtompfont</h1>
 Updated: 18 May 2008
+<br>
+<a href="#index">Table Of Contents</a>
 
-<A HREF="#index">Table Of Contents</A>
-
-<H2>NAME</H2>
+<h2>NAME</h2>
 pamtompfont - Convert Netpbm image to Mplayer bitmap font file
 
-<H2 id="synopsis">SYNOPSIS</H2>
-<B>pamtompfont</B>
-[<I>imagefile</I>]
+<h2 id="synopsis">SYNOPSIS</h2>
+<b>pamtompfont</b>
+[<i>netpbmfile</i>]
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>All options can be abbreviated to their shortest unique prefix.
 You may use two hyphens instead of one.  You may separate an option
 name and its value with white space instead of an equals sign.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -43,27 +43,30 @@ raster file of the to left corner of the glyph, and the width of the
 glyph in pixels.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<p>None.
+<p>There are no command line options defined specifically
+for <b>pamtompfont</b>, but it recognizes the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="pam.html">pam</A></B>
+<b><a href="pam.html">pam</a></b>
 
 <h2 id="history">HISTORY</h2>
 
 <p><b>pamtompfont</b> was added to Netpbm in Release 10.43 (June 2008).
 
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
diff --git a/pamtooctaveimg.html b/pamtooctaveimg.html
index 64a8f62c..4e09e8e1 100644
--- a/pamtooctaveimg.html
+++ b/pamtooctaveimg.html
@@ -58,7 +58,7 @@ specify <i>netpbmfile</i>, the input is from Standard Input.
 
 <pre>
 <kbd>
-   % pamtooctaveimg myimage.ppm > myimage.img
+   % pamtooctaveimg myimage.ppm &gt; myimage.img
    % octave
    &gt; [img,map] = loadimage("myimage.img");
 
diff --git a/pamtotiff.html b/pamtotiff.html
index e2301097..4334a543 100644
--- a/pamtotiff.html
+++ b/pamtotiff.html
@@ -1,59 +1,59 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamtotiff User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamtotiff</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamtotiff User Manual</title></head>
+<body>
+<h1>pamtotiff</h1>
 Updated: 05 April 2017
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 pamtotiff - convert a Netpbm image to a TIFF file
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamtotiff</B>
+<b>pamtotiff</b>
 
-[<B>-none</B> | <B>-packbits</B> | <B>-lzw</B> | <B>-g3</B> | <B>-g4</B>
-| <B>-flate</B> | <B>-adobeflate</B>]
+[<b>-none</b> | <b>-packbits</b> | <b>-lzw</b> | <b>-g3</b> | <b>-g4</b>
+| <b>-flate</b> | <b>-adobeflate</b>]
 
-[<B>-2d</B>]
+[<b>-2d</b>]
 
-[<B>-fill</B>]
+[<b>-fill</b>]
 
-[<B>-predictor=</B><I>n</I>]
+[<b>-predictor=</b><i>n</i>]
 
-[<B>-msb2lsb</B>|<B>-lsb2msb</B>]
+[<b>-msb2lsb</b>|<b>-lsb2msb</b>]
 
-[<B>-rowsperstrip=</B><I>n</I>]
+[<b>-rowsperstrip=</b><i>n</i>]
 
-[<B>-minisblack</B>|<B>-miniswhite</B>|<B>mb</B>|<b>mw</b>]
+[<b>-minisblack</b>|<b>-miniswhite</b>|<b>mb</b>|<b>mw</b>]
 
-[<B>-truecolor</B>]
+[<b>-truecolor</b>]
 
-[<B>-color</B>]
+[<b>-color</b>]
 
-[<B>-indexbits=</B><I>bitwidthlist</I>]
+[<b>-indexbits=</b><i>bitwidthlist</i>]
 
 <br>
-[<B>-xresolution=</b><i>xres</i>]
+[<b>-xresolution=</b><i>xres</i>]
 
-[<B>-yresolution=</b><i>yres</i>]
+[<b>-yresolution=</b><i>yres</i>]
 
 <br>
-[<B>-resolutionunit=</b>{<b>inch</b> | <b>centimeter</b> | <b>none</b> |
+[<b>-resolutionunit=</b>{<b>inch</b> | <b>centimeter</b> | <b>none</b> |
 <b>in</b> | <b>cm</b> | <b>no</b>}]
 
 [<b>-append</b>]
 
 [<b>-tag=</b><i>taglist</i>]
 
-[<I>pamfile</I>]
+[<i>pamfile</i>]
 
-<P>You can use the minimum unique abbreviation of the options.  You
+<p>You can use the minimum unique abbreviation of the options.  You
 can use two hyphens instead of one.  You can separate an option name
 from its value with white space instead of an equals sign.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -67,7 +67,7 @@ ignored all but the first Netpbm image in the input stream.
 
 <h3 id="output">The Output File</h3>
 
-<P>By default, the output goes to Standard Output.  Alternatively, you can
+<p>By default, the output goes to Standard Output.  Alternatively, you can
 specify an output file with the <b>-output</b> option and <b>pamtotiff</b>
 will write its output directly to that file.
 
@@ -131,18 +131,18 @@ for example, you would set up a write-only Standard Output to the
 file /tmp/myimage.tiff like this:
 
 <pre>
-<tt>
+<kbd>
     $ pamtotiff myimage.pnm &gt;/tmp/myimage.tiff
-</tt>
+</kbd>
 </pre>
 
 In Bash, you would set up a read/write Standard Output to the file
 /tmp/myimage.tiff like this:
 
 <pre>
-<tt>
+<kbd>
     $ pamtotiff myimage.pnm 1&lt;&gt;/tmp/myimage.tiff
-</tt>
+</kbd>
 </pre>
 
 <h3 id="library">TIFF Capability</h3>
@@ -151,11 +151,16 @@ In Bash, you would set up a read/write Standard Output to the file
 equivalent you provide) to generate the TIFF output.  Details of the
 format it produces are therefore controlled by that library.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
+
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pamtotiff</b> recognizes the following
+command line options:
 
 <h3 id="compression">Compression</h3>
 
-<P>By default, <B>pamtotiff</B> creates a TIFF file with no
+<p>By default, <b>pamtotiff</b> creates a TIFF file with no
 compression.  This is your best bet most of the time.  If you want to
 try another compression scheme or tweak some of the other even more
 obscure output options, there are a number of options which to
@@ -169,20 +174,20 @@ now expired and new TIFF libraries do LZW, but the <b>pamtotiff</b>
 behavior remains the same for compatibility with older TIFF libraries
 and applications of <b>pamtotiff</b>.
 
-<P>The <B>-none</B>, <B>-packbits</B>, <B>-lzw</B>, <B>-g3</B>,
-<B>-g4</B>, <B>-flate</B>, and <B>-adobeflate</B> options are used to
+<p>The <b>-none</b>, <b>-packbits</b>, <b>-lzw</b>, <b>-g3</b>,
+<b>-g4</b>, <b>-flate</b>, and <b>-adobeflate</b> options are used to
 override the default and set the compression scheme used in creating
 the output file.
 
-The <B>-predictor</B> option is meaningful only with LZW compression: a
+The <b>-predictor</b> option is meaningful only with LZW compression: a
 predictor value of 2 causes each scanline of the output image to undergo
 horizontal differencing before it is encoded; a value of 1 forces each
-scanline to be encoded without differencing.  By default, <B>pamtotiff</B>
-creates a TIFF file with msb-to-lsb fill order.  The <B>-msb2lsb</B> and
-<B>-lsb2msb</B> options are used to override the default and set the fill
+scanline to be encoded without differencing.  By default, <b>pamtotiff</b>
+creates a TIFF file with msb-to-lsb fill order.  The <b>-msb2lsb</b> and
+<b>-lsb2msb</b> options are used to override the default and set the fill
 order used in creating the file.
 
-<P>With some older TIFF libraries, <B>-lzw</B> doesn't work because
+<p>With some older TIFF libraries, <b>-lzw</b> doesn't work because
 the TIFF library doesn't do LZW compression.  This is because of
 concerns about Unisys's patent on LZW which was then in force.
 Actually, with very old TIFF libraries, <b>-lzw</b> works because no
@@ -193,7 +198,7 @@ issue.
 patent-free compression common in the Unix world implemented by the 
 "Z" library.  It is what the PNG format uses.
 
-<H4 id="faxcompression">Fax Compression</H4>
+<h4 id="faxcompression">Fax Compression</h4>
 
 <p>If you have bilevel data (e.g. PBM), you can generate a TIFF that uses the
 same compression scheme specified for use by fax machines.  See the <a
@@ -219,7 +224,7 @@ shall be zero-filled to a byte boundary.
 <h3 id="fillorder">Fill Order</h3>
 <p>The <b>-msb2lsb</b> and <b>lsb2msb</b> options control the fill order.
 
-<P>The fill order is the order in which pixels are packed into a byte in
+<p>The fill order is the order in which pixels are packed into a byte in
 the Tiff raster, in the case that there are multiple pixels per byte.
 msb-to-lsb means that the leftmost columns go into the most
 significant bits of the byte in the Tiff image.  However, there is
@@ -230,55 +235,55 @@ endianness of integers in a Tiff image is designated by the image's
 magic number).  However, ImageMagick and older Netpbm both have been known
 to implement that interpretation.  2001.09.06.
 
-<P>If the image does not have sub-byte pixels, these options have no
+<p>If the image does not have sub-byte pixels, these options have no
 effect other than to set the value of the FILLORDER tag in the Tiff
 image (which may be useful for those programs that misinterpret the
 tag with reference to 16 bit samples).
 
 <h3 id="colorspace">Color Space</h3>
 
-<P><B>-color</B> tells <B>pamtotiff</B> to produce a color, as
+<p><b>-color</b> tells <b>pamtotiff</b> to produce a color, as
 opposed to grayscale, TIFF image if the input is PPM, even if it
-contains only shades of gray.  Without this option, <B>pamtotiff</B>
+contains only shades of gray.  Without this option, <b>pamtotiff</b>
 produces a grayscale TIFF image if the input is PPM and contains only
 shades of gray, and at most 256 shades.  Otherwise, it produces a
-color TIFF output.  For PBM and PGM input, <B>pamtotiff</B> always
+color TIFF output.  For PBM and PGM input, <b>pamtotiff</b> always
 produces grayscale TIFF output and this option has no effect.
 
-<P>The <B>-color</B> option can prevent <B>pamtotiff</B> from making
+<p>The <b>-color</b> option can prevent <b>pamtotiff</b> from making
 two passes through the input file, thus improving speed and memory
 usage.  See <a href="#multipass">Multiple Passes</a>.
 
-<P><B>-truecolor</B> tells <B>pamtotiff</B> to produce the 24-bit RGB
+<p><b>-truecolor</b> tells <b>pamtotiff</b> to produce the 24-bit RGB
 form of TIFF output if it is producing a color TIFF image.  Without
-this option, <B>pamtotiff</B> produces a colormapped (paletted) TIFF
+this option, <b>pamtotiff</b> produces a colormapped (paletted) TIFF
 image unless there are more than 256 colors (and in the latter case,
 issues a warning).
 
-<P>The <B>-truecolor</B> option can prevent <B>pamtotiff</B> from
+<p>The <b>-truecolor</b> option can prevent <b>pamtotiff</b> from
 making two passes through the input file, thus improving speed and
 memory usage.  See <a href="#multipass">Multiple Passes</a>.
 
-<P>The <B>-color</b> and <b>-truecolor</b> options did not exist
+<p>The <b>-color</b> and <b>-truecolor</b> options did not exist
 before Netpbm 9.21 (December 2001).
 
-<P>If <B>pamtotiff</B> produces a grayscale TIFF image, this option
+<p>If <b>pamtotiff</b> produces a grayscale TIFF image, this option
 has no effect.
 
-<P>The <B>-minisblack</B> and <B>-miniswhite</B> options force the
+<p>The <b>-minisblack</b> and <b>-miniswhite</b> options force the
 output image to have a "minimum is black" or "minimum
 is white" photometric, respectively.  If you don't specify
-either, <B>pamtotiff</b> uses minimum is black except when using Group
-3 or Group 4 compression, in which case <B>pamtotiff</B> follows CCITT
+either, <b>pamtotiff</b> uses minimum is black except when using Group
+3 or Group 4 compression, in which case <b>pamtotiff</b> follows CCITT
 fax standards and uses "minimum is white." This usually
 results in better compression and is generally preferred for bilevel
 coding.  These photometrics are for grayscale images, so these options are
 invalid if the image is color (but only if it is truly color; they are
 valid with, for example, a PPM image that contains only shades of gray).
 
-<P>Before Netpbm 9.11 (February 200)1, <B>pamtotiff</B> always produced
+<p>Before Netpbm 9.11 (February 200)1, <b>pamtotiff</b> always produced
 "minimum is black," because of a bug.  In either case,
-<B>pamtotiff</B> sets the photometric interpretation tag in the TIFF
+<b>pamtotiff</b> sets the photometric interpretation tag in the TIFF
 output according to which photometric is actually used.
 
 <p>Before Netpbm 10.78 (March 2017), <b>pamtotiff</b> respected
@@ -286,28 +291,28 @@ output according to which photometric is actually used.
 invalid TIFF images that have the indicated photometric but red, green, and
 blue raster planes.
 
-<P>The <B>-indexbits</B> option is meaningful only for a colormapped
+<p>The <b>-indexbits</b> option is meaningful only for a colormapped
 (paletted) image.  In this kind of image, the raster contains values
 which are indexes into a table of colors, with the indexes normally
 taking less space that the color description in the table.
-<B>pamtotiff</B> can generate indexes of 1, 2, 4, or 8 bits.  By
+<b>pamtotiff</b> can generate indexes of 1, 2, 4, or 8 bits.  By
 default, it will use 8, because many programs that interpret TIFF
 images can't handle any other width.
 
-<P>But if you have a small number of colors, you can make your image
+<p>But if you have a small number of colors, you can make your image
 considerably smaller by allowing fewer than 8 bits per index, using the
-<B>-indexbits</B> option.  The value is a comma-separated list of the
-bit widths you allow.  <B>pamtotiff</B> chooses the smallest width you allow
+<b>-indexbits</b> option.  The value is a comma-separated list of the
+bit widths you allow.  <b>pamtotiff</b> chooses the smallest width you allow
 that allows it to index the entire color table.  If you don't allow any
-such width, <B>pamtotiff</B> fails.  Normally, the only useful value for
-this option is <B>1,2,4,8</B>, because a program either understands the 8
+such width, <b>pamtotiff</b> fails.  Normally, the only useful value for
+this option is <b>1,2,4,8</b>, because a program either understands the 8
 bit width (default) or understands them all.
 
-<P>In a Baseline TIFF image, according to the 1992 TIFF 6.0
+<p>In a Baseline TIFF image, according to the 1992 TIFF 6.0
 specification, 4 and 8 are the only valid widths.  There are no formal
 standards that allow any other values.
 
-<P>This option was added in June 2002.  Before that, only 8 bit indices were
+<p>This option was added in June 2002.  Before that, only 8 bit indices were
 possible.
 
 <h3 id="extratags">Extra Tags</h3>
@@ -373,7 +378,7 @@ an IMAGEWIDTH tag that gives the actual width of the image.
 
 <h3 id="outputoptions">Output</h3>
 
-<p>See <a href="output">The Output File</a>.
+<p>See <a href="#output">The Output File</a>.
 
 <p><b>-output</b> names the output file.  Without this option
 <b>pamtotiff</b> writes to Standard Output.
@@ -396,29 +401,29 @@ always Standard Output in 10.67) instead of replacing its contents.
 
 <h3 id="other">Other</h3>
 
-<P>You can use the <B>-rowsperstrip</B> option to set the number of
+<p>You can use the <b>-rowsperstrip</b> option to set the number of
 rows (scanlines) in each strip of data in the output file.  By
 default, the output file has the number of rows per strip set to a
 value that will ensure each strip is no more than 8 kilobytes long.
 
 
-<H2 id="notes">NOTES</H2>
+<h2 id="notes">NOTES</h2>
 
-<P>There are myriad variations of the TIFF format, and this program
-generates only a few of them.  <B>pamtotiff</B> creates a grayscale
+<p>There are myriad variations of the TIFF format, and this program
+generates only a few of them.  <b>pamtotiff</b> creates a grayscale
 TIFF file if its input is a PBM (monochrome) or PGM (grayscale) or
-equivalent PAM file.  <B>pamtotiff</B> also creates a grayscale file
+equivalent PAM file.  <b>pamtotiff</b> also creates a grayscale file
 if it input is PPM (color) or equivalent PAM, but there is only one
 color in the image.
 
 <p>If the input is a PPM (color) file and there are 256 colors or
-fewer, but more than 1, <B>pamtotiff</B> generates a color palette
-TIFF file.  If there are more colors than that, <B>pamtotiff</B>
+fewer, but more than 1, <b>pamtotiff</b> generates a color palette
+TIFF file.  If there are more colors than that, <b>pamtotiff</b>
 generates an RGB (not RGBA) single plane TIFF file.  Use
-<B>pnmtotiffcmyk</B> to generate the cyan-magenta-yellow-black ink
+<b>pnmtotiffcmyk</b> to generate the cyan-magenta-yellow-black ink
 color separation TIFF format.
 
-<P>The number of bits per sample in the TIFF output is determined by
+<p>The number of bits per sample in the TIFF output is determined by
 the maxval of the Netpbm input.  If the maxval is less than 256, the bits
 per sample in the output is the smallest number that can encode the
 maxval.  If the maxval is greater than or equal to 256, there are 16
@@ -460,25 +465,25 @@ your planes aren't really color components, you'll want to disable this
 via the <b>-color</b> option.
 
 
-<H3 id="multipass">Multiple Passes</H3>
+<h3 id="multipass">Multiple Passes</h3>
 
-<P><B>pamtotiff</B> reads the input image once if it can, and
+<p><b>pamtotiff</b> reads the input image once if it can, and
 otherwise twice.  It needs that second pass (which happens before the
 main pass, of course) to analyze the colors in the image and generate
 a color map (palette) and determine if the image is grayscale.  So the
 second pass happens only when the input is PPM.  And you can avoid it
-then by specifying both the <B>-truecolor</B> and <B>-color</B>
+then by specifying both the <b>-truecolor</b> and <b>-color</b>
 options.
 
-<P> If the input image is small enough to fit in your system's file
+<p> If the input image is small enough to fit in your system's file
 cache, the second pass is very fast.  If not, it requires reading from
 disk twice, which can be slow.
 
-<P>When the input is from a file that cannot be rewound and reread,
-<B>pamtotiff</B> reads the entire input image into a temporary file
+<p>When the input is from a file that cannot be rewound and reread,
+<b>pamtotiff</b> reads the entire input image into a temporary file
 which can, and works from that.  Even if it needs only one pass.
 
-<P>Before Netpbm 9.21 (December 2001), <b>pamtotiff</b> always read
+<p>Before Netpbm 9.21 (December 2001), <b>pamtotiff</b> always read
 the entire image into virtual memory and then did one, two, or three
 passes through the memory copy.  The <b>-truecolor</b> and
 <b>-color</b> options did not exist.  The passes through memory would
@@ -487,7 +492,7 @@ The image in memory required considerably more memory (12 bytes per
 pixel) than the cached file version of the image would.
 
 
-<h3>Resolution</h3>
+<h3 id="resolution">Resolution</h3>
 
 <p>A Tiff image may contain information about the resolution of the image,
 which means how big in real dimensions (centimeters, etc.) each pixel in the
@@ -535,7 +540,7 @@ does not contain horizontal resolution information.  Likewise for
 <b>-yresolution</b>.  If you don't specify <b>-resolutionunit</b>, the
 default is inches.
 
-<li>Before Netpbm 10.16 (June 2003), <B>-resolutionunit</b> did not
+<li>Before Netpbm 10.16 (June 2003), <b>-resolutionunit</b> did not
 exist and the resolution unit was always inches.
 
 </ul>
@@ -546,56 +551,57 @@ exist and the resolution unit was always inches.
 PAM input.  It was extended and renamed in Netpbm 10.30 (October 2005).
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="tifftopnm.html">tifftopnm</A></B>,
+<b><a href="tifftopnm.html">tifftopnm</a></b>,
 
-<B><A HREF="pnmtotiffcmyk.html">pnmtotiffcmyk</A></B>,
+<b><a href="pnmtotiffcmyk.html">pnmtotiffcmyk</a></b>,
 
-<B><A HREF="pamdepth.html">pamdepth</A></B>,
+<b><a href="pamdepth.html">pamdepth</a></b>,
 
-<B><A HREF="pamtopnm.html">pamtopnm</A></B>,
+<b><a href="pamtopnm.html">pamtopnm</a></b>,
 
-<B><A HREF="pam.html">pam</A></B>
+<b><a href="pam.html">pam</a></b>
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Derived by Jef Poskanzer from ras2tiff.c, which is
 Copyright (c) 1990 by Sun Microsystems, Inc.
-Author: Patrick J. Naughton (<A HREF="mailto:naughton@wind.sun.com">naughton@wind.sun.com</A>).
+Author: Patrick J. Naughton (<a href="mailto:naughton@wind.sun.com">naughton@wind.sun.com</a>).
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
   <ul>
   <li><a href="#output">The Output File</a>
-  <ul>
+    <ul>
     <li><a href="#oldoutput">Old Versions</a>
     </ul>
   <li><a href="#library">TIFF Capability</a>
   </ul>
-<LI><A HREF="#options">OPTIONS</A>
+<li><a href="#options">OPTIONS</a>
   <ul>
   <li><a href="#compression">Compression</a>
     <ul>
     <li><a href="#faxcompression">Fax Compression</a>
     </ul>
   <li><a href="#fillorder">Fill Order</a>
-  <li><a href="#colorspacer">Color Space</a>
+  <li><a href="#colorspace">Color Space</a>
   <li><a href="#extratags">Extra Tags</a>
   <li><a href="#outputoptions">Output</a>
   <li><a href="#other">Other</a>
   </ul>
-<LI><A HREF="#notes">NOTES</A>
-<UL>
-<LI><A HREF="#multipass">Multiple Passes</A>
-<LI><A HREF="#extrachannel">Extra Channels</A>
-</UL>
-<LI><A HREF="#history">HISTORY</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<li><a href="#notes">NOTES</a>
+  <ul>
+  <li><a href="#extrachannel">Extra Channels</a>
+  <li><a href="#multipass">Multiple Passes</a>
+  <li><a href="#resolution">Resolution</a>
+  </ul>
+<li><a href="#history">HISTORY</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pamvalidate.html b/pamvalidate.html
index a50f9b90..4ea689a5 100644
--- a/pamvalidate.html
+++ b/pamvalidate.html
@@ -1,21 +1,21 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pamvalidate User Manual</TITLE></HEAD>
-<BODY>
-<H1>pamvalidate</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pamvalidate User Manual</title></head>
+<body>
+<h1>pamvalidate</h1>
 Updated: 22 March 2014
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pamvalidate - validate Netpbm image format
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pamvalidate</B>
+<b>pamvalidate</b>
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -47,31 +47,33 @@ stream.
 <p>See <b>pamfix</b> for a way to salvage an invalid Netpbm image stream.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<p>None.
+<p>There are no command line options defined specifically
+for <b>pamvalidate</b>, but it recognizes the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)
 
+<h2 id="seealso">SEE ALSO</h2>
 
-<H2 id="seealso">SEE ALSO</H2>
-
-<B><A HREF="pam.html">pam</A></B>
-<B><A HREF="pnm.html">pnm</A></B>
-<B><A HREF="pamfix.html">pamfix</A></B>
+<b><a href="pam.html">pam</a></b>
+<b><a href="pnm.html">pnm</a></b>
+<b><a href="pamfix.html">pamfix</a></b>
 
 
 <h2 id="history">HISTORY</h2>
 
 <p><b>pamvalidate</b> was new in Netpbm 10.66 (March 2014).
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
 
diff --git a/pbmmake.html b/pbmmake.html
index fba27f14..06afbb73 100644
--- a/pbmmake.html
+++ b/pbmmake.html
@@ -1,26 +1,26 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pbmmake User Manual</TITLE></HEAD>
-<BODY>
-<H1>pbmmake</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pbmmake User Manual</title></head>
+<body>
+<h1>pbmmake</h1>
 Updated: 13 December 2003
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pbmmake - create a blank bitmap of a specified size
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pbmmake</B>
-[<B>-white</B>|<B>-black</B>|<B>-gray</B>]
-<I>width</I>
-<i>height</I>
+<b>pbmmake</b>
+[<b>-white</b>|<b>-black</b>|<b>-gray</b>]
+<i>width</i>
+<i>height</i>
 
 <p>You can abbreviate any option to its shortest unique prefix.
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -28,31 +28,46 @@ pbmmake - create a blank bitmap of a specified size
 height, either all black, all white, or a dithered gray.  The default
 is white.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>In addition to the usual <B>-white</B> and <B>-black</B>, this
-program implements <B>-gray</B>.  This gives a simple 50% gray pattern
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pbmmake</b> recognizes the following
+command line options:
+
+<dl compact>
+<dt><b>-white</b>
+<dt><b>-black</b>
+<dt><b>-gray</b>
+
+<p>In addition to the usual <b>-white</b> and <b>-black</b>, this
+program implements <b>-gray</b>.  This gives a simple 50% gray pattern
 with 1's and 0's alternating.
 
-<H2 id="seealso">SEE ALSO</H2>
+<p>With none of the above specified, the output image will be entirely
+white.
+
+</dl>
+
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pgmmake.html">pgmmake</A>,
-<A HREF="ppmmake.html">ppmmake</A>,
-<A HREF="pbm.html">pbm</A>
+<a href="pgmmake.html">pgmmake</a>,
+<a href="ppmmake.html">ppmmake</a>,
+<a href="pbm.html">pbm</a>
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 1989 by Jef Poskanzer.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pbmtog3.html b/pbmtog3.html
index dc53eccb..5606c989 100644
--- a/pbmtog3.html
+++ b/pbmtog3.html
@@ -42,10 +42,9 @@ command line options:
 
 <dd>This option causes the output to have the bits in every byte
 reversed so the least significant bit becomes the most significant bit.
-Apparently, there is some ambiguity in transmission protocols so that
-the bits get reversed on transmission, and this compensates for that.
-If you get a whole bunch of "bad code word" messages when you try to
-read the G3 file (e.g. with <b>g3topbm</b>), try using this option.
+Some fax modems expect bits in reverse order, and this compensates for
+that. If you get a whole bunch of "bad code word" messages when you try
+to read the G3 file (e.g. with <b>g3topbm</b>), try using this option.
 Note that the output is not G3 when you use this option.
 
 <dt><b>-nofixedwidth</b>
diff --git a/pbmtogem.html b/pbmtogem.html
index 0b34d268..f8073b43 100644
--- a/pbmtogem.html
+++ b/pbmtogem.html
@@ -31,7 +31,7 @@ Common Options</a>.)
 
 <h2 id="limitations">LIMITATIONS</h2>
 
-pbmtogem does not support compression of repeated lines
+<b>pbmtogem</b> cannot compress repeated lines.
 
 <h2 id="seealso">SEE ALSO</h2>
 
diff --git a/pbmtoicon.html b/pbmtoicon.html
index 6a6f7602..e46d63a7 100644
--- a/pbmtoicon.html
+++ b/pbmtoicon.html
@@ -1,21 +1,19 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pbmtoicon User Manual</TITLE></HEAD>
-<BODY>
-<H1>pbmtoicon</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pbmtoicon User Manual</title></head>
+<body>
+<h1>pbmtoicon</h1>
 
-<A HREF="#index">Table Of Contents</A>
+<h2>NAME</h2>
 
-<H2>NAME</H2>
+pbmtoicon - replaced by pbmtosunicon
 
-pbmtoicon - convert a Sun icon image to PBM
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<b>pbmtoicon</b>
+[<i>iconfile</i>]
 
-<B>pbmtoicon</B>
-[<I>iconfile</I>]
 
-
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -36,9 +34,5 @@ for <b>pbmtoicon</b>, as long as you recognize that any change the
 <b>pbmtosunicon</b> manual says happened in or after Netpbm 10.53 doesn't
 apply to <b>pbmtoicon</b>.
 
-</BODY>
-</HTML>
-
-
-
-
+</body>
+</html>
diff --git a/pbmtoppa.html b/pbmtoppa.html
index 5a7d4121..f4e695d1 100644
--- a/pbmtoppa.html
+++ b/pbmtoppa.html
@@ -236,7 +236,7 @@ as small as 1/4 inch without causing the printer to choke with
 same should work for the 820 and 1000, but it hasn't been tested.
 Also, use the pbmraw GSDriver if you have it; it's faster.
 
-<p>Here is a tip to integrate HP720C support in RedHat's printtool:
+<p>Here is a tip to integrate HP720C capability in RedHat's printtool:
 
 <p>Install pbmtoppa. Copy pbmtoppa to /usr/bin.
 
@@ -254,7 +254,7 @@ StartEntry: DeskJet720C
   About: { \
         This driver drives the HP DeskJet 720C \
         inkjet printer. \
-        It does not support color printing. \
+        It cannot do color printing. \
         IMPORTANT! Insert \
            "- | pbm2ppa -" \
         in the "Extra GS Options " field.\
diff --git a/pgmdeshadow.html b/pgmdeshadow.html
index acde9010..0349b260 100644
--- a/pgmdeshadow.html
+++ b/pgmdeshadow.html
@@ -1,24 +1,22 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pgmdeshadow User Manual</TITLE></HEAD>
-<BODY>
-<H1>pgmdeshadow</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pgmdeshadow User Manual</title></head>
+<body>
+<h1>pgmdeshadow</h1>
 Updated: 06 July 2006
-<p>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<A HREF="#index">Table Of Contents</A>
-
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pgmdeshadow - Deshadow a PGM image
 
-<H2 id="synopsis">SYNOPSIS</H2>
-
-<B>pgmdeshadow</B>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-[<I>pnmfile</I>]
+<b>pgmdeshadow</b>
 
+[<i>pnmfile</i>]
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -36,11 +34,14 @@ algorithm from Luc Vincent, "Morphological Grayscale Reruction in
 Image Analysis: Applications and Efficient Algorithms.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<p>None.
+<p>There are no command line options defined specifically
+for <b>pgmdeshadow</b>, but it recognizes the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)
 
-<H2 id="references">REFERENCES</H2>
+<h2 id="references">REFERENCES</h2>
 
 <ul>
 
@@ -52,26 +53,26 @@ pp. 176-201.
 </ul>
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="ppmshadow.html">ppmshadow</A>,
-<A HREF="pgm.html">pgm</A>
+<a href="ppmshadow.html">ppmshadow</a>,
+<a href="pgm.html">pgm</a>
 
 <h2 id="history">HISTORY</h2>
 
-<P><b>pgmdeshadow</b> was added to Netpbm in Version 10.35 (August 2006).
+<p><b>pgmdeshadow</b> was added to Netpbm in Version 10.35 (August 2006).
 
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#references">REFERENCES</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-</UL>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#references">REFERENCES</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+</ul>
 
-</BODY>
-</HTML>
+</body>
+</html>
diff --git a/pgmramp.html b/pgmramp.html
index 3008dc01..12e1d530 100644
--- a/pgmramp.html
+++ b/pgmramp.html
@@ -1,28 +1,28 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><title>Pgmramp User Manual</title>
-</HEAD><BODY>
-<H1>pgmramp</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pgmramp User Manual</title></head>
+<body>
+<h1>pgmramp</h1>
 Updated: 15 February 2014
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pgmramp - generate a grayscale ramp
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pgmramp</B>
-{<B>-lr</B>|<B>-tb</B>|<B>-rectangle</B>|<B>-ellipse</B>|<b>-diagonal</b>}
+<b>pgmramp</b>
+{<b>-lr</b>|<b>-tb</b>|<b>-rectangle</b>|<b>-ellipse</b>|<b>-diagonal</b>}
 [<b>-maxval=</b><i>maxval</i>]
-<I>width</i> <i>height</I>
+<i>width</i> <i>height</i>
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>All options can be abbreviated to their shortest unique prefix.
 You may use two hyphens instead of one to designate an option.  You
 may use either white space or an equals sign between an option name
 and its value.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -47,75 +47,81 @@ example, the <b>-lr</b> option gives you a left to right ramp and
 
 gives you a right to left ramp.
 
-<P>To generate a simple ramp of all the values from 0 to maxval, and not
+<p>To generate a simple ramp of all the values from 0 to maxval, and not
 necessarily a graphic image, use <b><a href="pamseq.html">pamseq</a></b>.
 
 <p><b>ppmrainbow</b> does something similar to what <b>pgmramp</b> does,
 but for color.  The image fades between two colors of your choice.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pgmramp</b> recognizes the following
+command line options:
+<p>
 You must specify exactly one of the ramp type options.
-<DL COMPACT>
-<DT><B>-lr</B>
-<DD>
+
+<dl compact>
+<dt><b>-lr</b>
+<dd>
 A left to right ramp.  Black on the left; white on the right.
 
-<DT><B>-tb</B>
-<DD>
+<dt><b>-tb</b>
+<dd>
 A top to bottom ramp.  Black on top; white on the bottom.
 
-<DT><B>-rectangle</B>
-<DD>
+<dt><b>-rectangle</b>
+<dd>
 An outside-in rectangular ramp.  It is black around the edges and white
 in the center.
 
-<DT><B>-ellipse</B>
-<DD>
+<dt><b>-ellipse</b>
+<dd>
 An outside-in elliptical ramp.  It is black around the edge and white
 in the center.
 
-<DT><B>-diagonal</B>
-<DD>
+<dt><b>-diagonal</b>
+<dd>
 A ramp from top left corner diagonally down to bottom right.  Black at
 the top left; white at the bottom right.
 <p>
 This option was new in Netpbm 10.66 (March 2014).
 
-<DT><b>-maxval=</b><i>maxval</i>
-<DD>
+<dt><b>-maxval=</b><i>maxval</i>
+<dd>
      The maxval for the generated image.  Default is 255.
 <p>
      This option was new in Netpbm 10.1 (June 2002).  Before that, the maxval
      is always 255.
      
-</DL>
+</dl>
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pamflip.html"><b>pamflip</b></A>,
-<A HREF="pamarith.html"><b>pamarith</b></A>,
-<A HREF="pnmgamma.html"><b>pnmgamma</b></A>,
-<A HREF="pamseq.html"><b>pamseq</b></A>,
-<A HREF="ppmrainbow.html"><b>ppmrainbow</b></A>,
-<A HREF="pamgradient.html"><b>pamgradient</b></A>,
-<A HREF="pgm.html">pgm</A>
+<a href="pamflip.html"><b>pamflip</b></a>,
+<a href="pamarith.html"><b>pamarith</b></a>,
+<a href="pnmgamma.html"><b>pnmgamma</b></a>,
+<a href="pamseq.html"><b>pamseq</b></a>,
+<a href="ppmrainbow.html"><b>ppmrainbow</b></a>,
+<a href="pamgradient.html"><b>pamgradient</b></a>,
+<a href="pgm.html">pgm</a>
 
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 1989 by Jef Poskanzer.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#optoins">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pngtopnm.html b/pngtopnm.html
index 42709612..64d8f8a0 100644
--- a/pngtopnm.html
+++ b/pngtopnm.html
@@ -1,33 +1,31 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pngtopnm User Manual</TITLE></HEAD>
-<BODY>
-<H1>pngtopnm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pngtopnm User Manual</title></head>
+<body>
+<h1>pngtopnm</h1>
 Updated: 22 July 2008
-<BR>
-<A HREF="#index">Table Of Contents</A>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
-pngtopnm - convert a PNG image into a PNM image
+pngtopnm - Convert a PNG image to PNM: replaced by pngtopam
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pngtopnm</B>
+<b>pngtopnm</b>
 [<b>-verbose</b>]
 [<b>-alpha</b> | <b>-mix</b>]
 [<b>-background</b>=<i>color</i>]
-<BR>
+<br>
 [<b>-gamma</b>=<i>value</i>]
 [<b>-text</b>=<i>filename</i>]
 [<b>-time</b>]
-[<I>pngfile</I>]
+[<i>pngfile</i>]
 
-<P>Minimum unique abbreviation of option is acceptable.  You may use double
+<p>Minimum unique abbreviation of option is acceptable.  You may use double
 hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -60,9 +58,5 @@ after Netpbm 10.44 doesn't apply to <b>pngtopnm</b>.
 
 </ul>
 
-</BODY>
-</HTML>
-
-
-
-
+</body>
+</html>
diff --git a/pnmalias.html b/pnmalias.html
index a527dcf1..bfcd506d 100644
--- a/pnmalias.html
+++ b/pnmalias.html
@@ -1,36 +1,36 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmalias User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmalias</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmalias User Manual</title></head>
+<body>
+<h1>pnmalias</h1>
 Updated: 15 March 2004
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pnmalias - antialias a PNM image
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pnmalias</B>
+<b>pnmalias</b>
 
-[<B>-bgcolor</B> <I>color</I>]
+[<b>-bgcolor</b> <i>color</i>]
 
-[<B>-fgcolor</B> <I>color</I>]
+[<b>-fgcolor</b> <i>color</i>]
 
-[<B>-bonly</B>]
+[<b>-bonly</b>]
 
-[<B>-fonly</B>]
+[<b>-fonly</b>]
 
-[<B>-balias</B>]
+[<b>-balias</b>]
 
-[<B>-falias</B>]
+[<b>-falias</b>]
 
-[<B>-weight</B> <I>w</I>]
+[<b>-weight</b> <i>w</i>]
 
-[<I>pnmfile</I>]
+[<i>pnmfile</i>]
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -39,64 +39,69 @@ anti-aliasing to background and foreground pixels.  If the input file
 is a PBM, <b>pnmalias</b> promotes the output anti-aliased image to a
 PGM, and prints a message informing the user of the change in format.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P><B>-bgcolor</B> <I>colorb</I> sets the background color the
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pnmalias</b> recognizes the following
+command line options:
+
+<p><b>-bgcolor</b> <i>colorb</i> sets the background color the
 <i>colorb</i>.
 
-<p><B>-fgcolor</B> <I>colorf</I> sets the foreground color to
+<p><b>-fgcolor</b> <i>colorf</i> sets the foreground color to
 <i>colorf</i>.
 
 <p>Pixels with these values will be anti-aliased.  By default,
 <b>pnmalias</b> takes the background color to be black, and foreground
 color to be white.
 
-<P>Specify the color (<i>color</i>) as described for the <a
+<p>Specify the color (<i>color</i>) as described for the <a
 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
+<p>Note that even when dealing with PGMs, background and foreground
 colors need to be specified in the fashion described above.  In this
 case, <b>pnmalias</b> takes the background and foreground pixel values
 to be the value of the red component for the specified color.
 
-<P><B>-bonly</B> says to apply anti-aliasing only to the background pixels.
+<p><b>-bonly</b> says to apply anti-aliasing only to the background pixels.
 
-<p><B>-fonly</B> says to apply anti-aliasing only to the foreground pixels.
+<p><b>-fonly</b> says to apply anti-aliasing only to the foreground pixels.
 
-<P><B>-balias</B> says to apply anti-aliasing to all pixels surrounding
+<p><b>-balias</b> says to apply anti-aliasing to all pixels surrounding
 background pixels.
 
-<P><B>-falias</B> says to apply anti-aliasing to all pixels surrounding
+<p><b>-falias</b> says to apply anti-aliasing to all pixels surrounding
 foreground pixels.
 
 <p>If you specify neither <b>-balias</b> nor <b>-falias</b>,
 <b>pnmalias</b> applies anti-aliasing only among neighboring
 background and foreground pixels.
 
-<P><B>-weight</B> <I>w</I> says to use <I>w</I> as the central weight
-for the aliasing filter.  <I>w</I> must be a real number in the range
-0 &lt; <I>w</I> &lt; 1.  The lower the value of <I>w</I> is, the
+<p><b>-weight</b> <i>w</i> says to use <i>w</i> as the central weight
+for the aliasing filter.  <i>w</i> must be a real number in the range
+0 &lt; <i>w</i> &lt; 1.  The lower the value of <i>w</i> is, the
 "blurrier" the output image is.  The default is w = 1/3.
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pbmtext.html">pbmtext</A>,
-<A HREF="pnmsmooth.html">pnmsmooth</A>,
-<A HREF="pnm.html">pnm</A>
+<a href="pbmtext.html">pbmtext</a>,
+<a href="pnmsmooth.html">pnmsmooth</a>,
+<a href="pnm.html">pnm</a>
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 1992 by Alberto Accomazzi, Smithsonian Astrophysical Observatory.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pnmcolormap.html b/pnmcolormap.html
index 70a382db..2ce2ea3d 100644
--- a/pnmcolormap.html
+++ b/pnmcolormap.html
@@ -1,64 +1,64 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmcolormap User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmcolormap</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmcolormap User Manual</title></head>
+<body>
+<h1>pnmcolormap</h1>
 Updated: 09 February 2019
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pnmcolormap - create quantization color map for a Netpbm image
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pnmcolormap</B>
+<b>pnmcolormap</b>
 
-[<B>-center</B>|<B>-meancolor</B>|<B>-meanpixel</B>]
+[<b>-center</b>|<b>-meancolor</b>|<b>-meanpixel</b>]
 
-[<B>-spreadbrightness</B>|<B>-spreadluminosity</B>]
+[<b>-spreadbrightness</b>|<b>-spreadluminosity</b>]
 
-[<B>-splitpixelct</B>|<B>-splitcolorct</B>|<b>-splitspread</b>]
+[<b>-splitpixelct</b>|<b>-splitcolorct</b>|<b>-splitspread</b>]
 
-[<B>-sort</B>]
+[<b>-sort</b>]
 
-[<B>-square</B>] 
+[<b>-square</b>] 
 
-<I>ncolors</I>|<B>all</B>
+<i>ncolors</i>|<b>all</b>
 
-[<I>pnmfile</I>]
+[<i>pnmfile</i>]
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
 <p><b>pnmcolormap</b> reads a PNM or PAM image as input, chooses
-<I>ncolors</I> colors to best represent the image and writes a PNM
+<i>ncolors</i> colors to best represent the image and writes a PNM
 color map defining them as output.  A PAM image may actually contain
 tuples of any kind, but <b>pnmcolormap</b>'s concept of the tuple values
 that best represent the ones present in the image may not make sense if
 the tuple type isn't RGB or GRAYSCALE.  The design of the program, and
 the rest of this manual, assumes the tuples represent colors.
 
-<P>You can use this map as input to <B>pnmremap</B> on the same input
+<p>You can use this map as input to <b>pnmremap</b> on the same input
 image to quantize the colors in that image, I.e. produce a similar
-image with fewer colors.  <B>pnmquant</B> does both the <B>pnmcolormap</B>
-and <B>pnmremap</B> steps for you.
+image with fewer colors.  <b>pnmquant</b> does both the <b>pnmcolormap</b>
+and <b>pnmremap</b> steps for you.
 
-<P>A PNM colormap is a PNM image of any dimensions that contains at
+<p>A PNM colormap is a PNM image of any dimensions that contains at
 least one pixel of each color in the set of colors it represents.  The
 ones <b>pnmcolormap</b> generates have exactly one pixel of each color,
 except where padding is necessary with the <b>-square</b> option.
 
-<P>The quantization method is Heckbert's "median cut".
+<p>The quantization method is Heckbert's "median cut".
 See <a href="#quant">QUANTIZATION METHOD</a>.
 
-<P>The output image is of the same format (PBM, PGM, PPM, PAM) as the
+<p>The output image is of the same format (PBM, PGM, PPM, PAM) as the
 input image.  Note that a colormap of a PBM image is not very
 interesting.
 
-<P>The colormap generally has the same maxval as the input image, but
-<B>pnmcolormap</B> may reduce it if there are too many colors in the
+<p>The colormap generally has the same maxval as the input image, but
+<b>pnmcolormap</b> may reduce it if there are too many colors in the
 input, as part of its quantization algorithm.
 
 <p><b>pnmcolormap</b> works on a multi-image input stream.  In that
@@ -72,77 +72,82 @@ from each image would make the same color in two images map to
 different colors.  Before Netpbm 10.31 (December 2005), <b>pnmcolormap</b>
 ignored any image after the first.
 
-<P>If you want to create a colormap without basing it on the colors in
-an input image, <B>pamseq</B>, <b>ppmmake</b>, and <b>pnmcat</b> can
+<p>If you want to create a colormap without basing it on the colors in
+an input image, <b>pamseq</b>, <b>ppmmake</b>, and <b>pnmcat</b> can
 be useful.
 
-<H2 id="parameters">PARAMETERS</H2>
+<h2 id="parameters">PARAMETERS</h2>
 
-<P>The single parameter, which is required, is the number of colors you want
-in the output colormap.  <B>pnmcolormap</B> may produce a color map with
-slightly fewer colors than that.  You may specify <B>all</B> to get a colormap
+<p>The single parameter, which is required, is the number of colors you want
+in the output colormap.  <b>pnmcolormap</b> may produce a color map with
+slightly fewer colors than that.  You may specify <b>all</b> to get a colormap
 of every color in the input image (no quantization).  When you specify
 <b>all</b>, the function is essentially the same as that of <b>ppmhist
 -map</b>.  <b>ppmhist</b> is much older.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>All options can be abbreviated to their shortest unique prefix.  You
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pnmcolormap</b> recognizes the following
+command line options:
+
+<p>All options can be abbreviated to their shortest unique prefix.  You
 may use two hyphens instead of one to designate an option.  You may
 use either white space or an equals sign between an option name and
 its value.
 
-<DL COMPACT>
-<DT><B>-sort</B>
+<dl compact>
+<dt><b>-sort</b>
 
-<DD>This option causes the output colormap to be sorted by the red
+<dd>This option causes the output colormap to be sorted by the red
 component intensity, then the green, then the blue in ascending order.
 This is an insertion sort, so it is not very fast on large colormaps.
 Sorting is useful because it allows you to compare two sets of colors.
 
-<DT><B>-square</B>
+<dt><b>-square</b>
 
-<DD>By default, <B>pnmcolormap</B> produces as the color map a PPM
+<dd>By default, <b>pnmcolormap</b> produces as the color map a PPM
 image with one row and with one column for each color in the colormap.
-This option causes <B>pnmcolormap</B> instead to produce a PPM image
+This option causes <b>pnmcolormap</b> instead to produce a PPM image
 that is within one row or column of being square, with the last pixel
 duplicated as necessary to create a number of pixels which is such an
 almost-perfect square.
 
-<DT><B>-verbose</B>
+<dt><b>-verbose</b>
 
-<DD>This option causes <B>pnmcolormap</B> to display messages to
-Standard Error about the quantization.  <DT><B>-center</B>
+<dd>This option causes <b>pnmcolormap</b> to display messages to
+Standard Error about the quantization.  <dt><b>-center</b>
 
-<DT><B>-meancolor</B>
+<dt><b>-meancolor</b>
 
-<DT><B>-meanpixel</B>
+<dt><b>-meanpixel</b>
 
-<DT><B>-spreadbrightness</B>
+<dt><b>-spreadbrightness</b>
 
-<DT><B>-spreadluminosity</B>
+<dt><b>-spreadluminosity</b>
 
-<DT><B>-splitpixelct</B>
+<dt><b>-splitpixelct</b>
 
-<DT><B>-splitcolorct</B>
+<dt><b>-splitcolorct</b>
 
-<DT><B>-splitspread</B>
+<dt><b>-splitspread</b>
 
-<DD>These options control the quantization algorithm.  See <a
+<dd>These options control the quantization algorithm.  See <a
 href="#quant">QUANTIZATION METHOD</a>.
 
-</DL>
+</dl>
 
 
-<H2 id="quant">QUANTIZATION METHOD</H2>
+<h2 id="quant">QUANTIZATION METHOD</h2>
 
-<P>A quantization method is a way to choose which colors, being fewer
+<p>A quantization method is a way to choose which colors, being fewer
 in number than in the input, you want in the output.
-<B>pnmcolormap</B> uses Heckbert's "median cut" quantization
+<b>pnmcolormap</b> uses Heckbert's "median cut" quantization
 method.
 
-<P>This method involves separating all the colors into
+<p>This method involves separating all the colors into
 "boxes," each holding colors that represent about the same
 number of pixels.  You start with one box and split boxes in two until
 the number of boxes is the same as the number of colors you want in
@@ -165,31 +170,31 @@ the output, and choose one color to represent each box.
   in Netpbm 10.88 (September 2019).  Before that, <b>pnmcolormap</b> always
   splits the box containing the most pixels.
   
-<P>When you split a box, you do it so each sub-box has the same number of
+<p>When you split a box, you do it so each sub-box has the same number of
 pixels (except one sub-box has more if the full box has an odd number), with
 the &quot;greatest&quot; pixels in one sub-box and the &quot;least&quot;
 pixels in the other.  "Greater," for a particular box, means it is brighter in
 the color component (red, green, blue) which has the largest spread in that
-box.  <B>pnmcolormap</B> gives you two ways to define "largest spread.": 1)
+box.  <b>pnmcolormap</b> gives you two ways to define "largest spread.": 1)
 largest spread of brightness; 2) largest spread of contribution to the
 luminosity of the color.  E.g. red is weighted much more than blue.  Select
-among these with the <B>-spreadbrightness</B> and <B>-spreadluminosity</B>
-options.  The default is <B>-spreadbrightness</B>.  Where there are multiple
+among these with the <b>-spreadbrightness</b> and <b>-spreadluminosity</b>
+options.  The default is <b>-spreadbrightness</b>.  Where there are multiple
 colors of the median magnitude, they are distributed arbitrarily among between
 the subboxes.  This arbitrary distribution depends upon what the system's
 <b>qsort</b> function does with multiple equal values, so <b>pnmcolormap</b>
 may produce slightly different results on different systems.
 
-<P><B>pnmcolormap</B> provides three ways of choosing a color to represent a
+<p><b>pnmcolormap</b> provides three ways of choosing a color to represent a
 box: 1) the center color - the color halfway between the greatest and least
 colors in the box, using the above definition of "greater"; 2) the mean of the
 colors (each component averaged separately by brightness) in the box; 3) the
 mean weighted by the number of pixels of a color in the image.
 
-<P>Select among these with the <B>-center</B>, <B>-meancolor</B>, and
-<B>-meanpixel</B> options.  The default is <B>-center</B>.
+<p>Select among these with the <b>-center</b>, <b>-meancolor</b>, and
+<b>-meanpixel</b> options.  The default is <b>-center</b>.
 
-<P>Note that in all three methods, there may be colors in the output
+<p>Note that in all three methods, there may be colors in the output
 which do not appear in the input at all.
 
 <p>Also note that the color chosen to represent the colors in Box A the best
@@ -203,27 +208,27 @@ and in fact the color <b>pnmcolormap</b> chose to represent Box B may not
 appear in the <b>pnmremap</b> output at all.
   
 
-<H2 id="references">REFERENCES</H2>
+<h2 id="references">REFERENCES</h2>
 
 "Color Image Quantization for Frame Buffer Display" by Paul Heckbert,
 SIGGRAPH '82 Proceedings, page 297.
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="pnmremap.html">pnmremap</A></B>,
-<B><A HREF="pnmquant.html">pnmquant</A></B>,
-<B><A HREF="ppmquantall.html">ppmquantall</A></B>,
-<B><A HREF="pamgetcolor.html">pamgetcolor</A></B>,
-<B><A HREF="pamdepth.html">pamdepth</A></B>,
-<B><A HREF="ppmdither.html">ppmdither</A></B>,
-<B><A HREF="pamseq.html">pamseq</A></B>,
-<B><A HREF="ppmmake.html">ppmmake</A></B>,
-<B><A HREF="pnmcat.html">pnmcat</A></B>,
-<B><A HREF="ppm.html">ppm</A></B>
+<b><a href="pnmremap.html">pnmremap</a></b>,
+<b><a href="pnmquant.html">pnmquant</a></b>,
+<b><a href="ppmquantall.html">ppmquantall</a></b>,
+<b><a href="pamgetcolor.html">pamgetcolor</a></b>,
+<b><a href="pamdepth.html">pamdepth</a></b>,
+<b><a href="ppmdither.html">ppmdither</a></b>,
+<b><a href="pamseq.html">pamseq</a></b>,
+<b><a href="ppmmake.html">ppmmake</a></b>,
+<b><a href="pnmcat.html">pnmcat</a></b>,
+<b><a href="ppm.html">ppm</a></b>
 
-<H2 id="history">HISTORY</H2>
+<h2 id="history">HISTORY</h2>
 
-<P>Before Netpbm 10.15 (April 2003), <b>pnmcolormap</b> used a lot
+<p>Before Netpbm 10.15 (April 2003), <b>pnmcolormap</b> used a lot
 more memory for large images because it kept the entire input image in
 memory.  Now, it processes it a row at a time, but because it
 sometimes must make multiple passes through the image, it first copies
@@ -239,23 +244,23 @@ Netpbm 9.23 split it out into two separate programs:
 <b>pnmquant</b> with a program that simply calls <b>pnmcolormap</b> and
 <b>pnmremap</b>.
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 1989, 1991 by Jef Poskanzer.
 
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#parameters">PARAMETERS</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#quant">QUANTIZATION METHOD</A>
-<LI><A HREF="#references">REFERENCES</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#parameters">PARAMETERS</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#quant">QUANTIZATION METHOD</a>
+<li><a href="#references">REFERENCES</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pnmcomp.html b/pnmcomp.html
index 510d646c..f35b9cb4 100644
--- a/pnmcomp.html
+++ b/pnmcomp.html
@@ -1,17 +1,15 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmcomp User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmcomp</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmcomp User Manual</title></head>
+<body>
+<h1>pnmcomp</h1>
 Updated: 02 August 2014
-<BR>
-<A HREF="#index">Table Of Contents</A>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
-<B>pnmcomp</B> - replaced by pamcomp
+<b>pnmcomp</b> - replaced by pamcomp
 
 
-<H2>DESCRIPTION</H2>
+<h2>DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -29,8 +27,5 @@ its age.  But now it would just be clutter.
 <b>pnmcomp</b>.  Features that are in <b>pamcomp</b> but not <b>pnmcomp</b>
 are indicated by statements that they didn't exist before 10.21.
 
-</BODY>
-</HTML>
-
-
-
+</body>
+</html>
diff --git a/pnmnorm.html b/pnmnorm.html
index 17af3f4c..566964b1 100644
--- a/pnmnorm.html
+++ b/pnmnorm.html
@@ -1,22 +1,22 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmnorm User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmnorm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmnorm User Manual</title></head>
+<body>
+<h1>pnmnorm</h1>
 Updated: 19 December 2014
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pnmnorm - normalize the contrast in a Netpbm image
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pnmnorm</B>
+<b>pnmnorm</b>
 
-[<B>-bpercent=</B><I>percent</I> | <B>-bvalue=</B><I>N</I> | <b>-bsingle</b>]
+[<b>-bpercent=</b><i>percent</i> | <b>-bvalue=</b><i>N</i> | <b>-bsingle</b>]
 
-[<B>-wpercent=</B><I>percent</I> | <B>-wvalue=</B><I>N</I> | <b>-wsingle</b>]
+[<b>-wpercent=</b><i>percent</i> | <b>-wvalue=</b><i>N</i> | <b>-wsingle</b>]
 
 [<b>-midvalue=</b><i>N</i>]
 
@@ -24,19 +24,19 @@ pnmnorm - normalize the contrast in a Netpbm image
 
 [<b>-maxexpand=</b><i>percent</i>]
 
-[<B>-keephues</B>]
+[<b>-keephues</b>]
 
-[<B>-luminosity</B> | <B>-colorvalue</B> | <B>-saturation</B>]
+[<b>-luminosity</b> | <b>-colorvalue</b> | <b>-saturation</b>]
 
-[<I>ppmfile</I>]
+[<i>ppmfile</i>]
 
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>All options can be abbreviated to their shortest unique prefix.
 You may use two hyphens instead of one to designate an option.  You
 may use either white space or an equals sign between an option name
 and its value.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -53,11 +53,11 @@ becomes black, the brightness that becomes white, and the brightness that
 becomes that middle value, <b>pnmnorm</b> computes a quadratic equation that
 maps all the other brightnesses from input values to output values.
 
-<P>The program first determines a mapping of old brightness to new
+<p>The program first determines a mapping of old brightness to new
 brightness.  For each possible brightness of a pixel, the program
 determines a corresponding brightness for the output image.
 
-<P>Then for each pixel in the image, the program computes a color which has
+<p>Then for each pixel in the image, the program computes a color which has
 the desired output brightness and puts that in the output.  With a color
 image, it is not always possible to compute such a color and retain any
 semblance of the original hue, so the brightest and dimmest pixels may only
@@ -74,7 +74,7 @@ In the case of saturation, "brightness" is pretty much a
 misnomer, but you can use the brightness analogy to see what it does.
 In the analogy, bright means saturated and dark means unsaturated.
 
-<P>Note that all of these are different from separately normalizing
+<p>Note that all of these are different from separately normalizing
 the individual color components.
 
 <p>An alternative way to spread out the brightnesses in an image is
@@ -86,26 +86,38 @@ gives you more contrast than <b>pnmnorm</b> does, but can considerably
 change the picture in exchange.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>By default, the darkest 2 percent of all pixels are mapped to
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pnmnorm</b> recognizes the following
+command line options:
+
+<p>By default, the darkest 2 percent of all pixels are mapped to
 black, and the brightest 1 percent are mapped to white.  You can
 override this behavior and specify either a different percentage, or
 specific brightness values to map to black and to white, or just have
 the single greatest brightness map to white and the least brightness map
 to black.
 
-<p>To specify a percentage, use the <B>-bpercent</B> and
-<B>-wpercent</B> options, or you can specify the exact pixel values to
-be mapped by using the <B>-bvalue</B> and <B>-wvalue</B> options.
+<dl compact>
+<dt><b>-bpercent</b>
+<dt><b>-wpercent</b>
+<dt><b>-bvalue</b>
+<dt><b>-wvalue</b>
+
+<dd>
+<p>To specify a percentage, use the <b>-bpercent</b> and
+<b>-wpercent</b> options, or you can specify the exact pixel values to
+be mapped by using the <b>-bvalue</b> and <b>-wvalue</b> options.
 You can get appropriate numbers for the options from
 <b>ppmhist</b>.  If you just want to enhance the contrast, then
 choose values at elbows in the histogram; e.g. if value 29 represents
 3% of the image but value 30 represents 20%, choose 30 for
-<I>bvalue</I>.  If you want to brighten the image, then set
-<I>bvalue</I> to 0 and just fiddle with <I>wvalue</I>; similarly, to
-darken the image, set <I>wvalue</I> to maxval and play with
-<I>bvalue</I>.
+<i>bvalue</i>.  If you want to brighten the image, then set
+<i>bvalue</i> to 0 and just fiddle with <i>wvalue</i>; similarly, to
+darken the image, set <i>wvalue</i> to maxval and play with
+<i>bvalue</i>.
 
 <p>If you specify both <b>-bvalue</b> and <b>-bpercent</b>, <b>pnmnorm</b>
 uses the one that produces the least change.  The same goes for
@@ -134,7 +146,7 @@ In that case, <b>pnmnorm</b> adjusts the percentile value as
 required.  In the example, it uses 99 as the black value (like
 <b>-bvalue=99</b>).
 
-<P>It is also possible for your <b>-bpercent</b> and <b>-wpercent</b>
+<p>It is also possible for your <b>-bpercent</b> and <b>-wpercent</b>
 options to select the same brightness value for the stretch-to-white
 and stretch-to-black value because of the fact that <b>pnmnorm</b>
 can't subdivide a histogram cell.  E.g. if an image is all brightness
@@ -156,12 +168,17 @@ range expansion of 150% (from a range of 40 to a range of 100).  That
 much stretching means two adjacent pixels that used to differ in
 intensity by 4 units now differ by 10, and that might be unsightly.
 
+<dt><b>-bsingle</b>
+<dd>
 <p>To specify that the single least brightness in the image should stretch to
 black in the output, specify <b>-bsingle</b>.  To specify that the single
 greatest brightness in the image should stretch to white in the output,
 specify <b>-wsingle</b>.  <b>-bsingle</b> and <b>-wsingle</b> were new in
 Netpbm 10.69 (December 2014).
 
+<dt><b>-maxexpand</b>
+<dd>
+
 <p>So that you can put a limit on the amount of expansion without
 having to examine the image first, there is the <b>-maxexpand</b>
 option.  It specifies the maximum expansion you will tolerate, as an
@@ -176,18 +193,18 @@ amount you specified.
 <p>When <b>pnmnorm</b> limits the expansion because of <b>-maxexpand</b>,
 it tells you about it with a message like this:
 <pre>
-<tt>
+<span style="font-family: monospace">
     limiting expansion of 150% to 50%
-</tt>
+</span>
 </pre>
 
 <p>In any case, <b>pnmnorm</b> tells you exactly what expansion it's
 doing, like this:
 
 <pre>
-<tt>
+<span style="font-family: monospace">
     remapping 25..75 to 0..100
-</tt>
+</span>
 </pre>
 
 <p>Before Netpbm 10.26 (December 2004), it was not valid to specify both
@@ -195,19 +212,26 @@ doing, like this:
 
 <p><b>-maxexpand</b> was new in Netpbm 10.32 (February 2006).
 
-<P>The <B>-keephues</B> option says to keep each pixel the same hue as
+<dt><b>-keephues</b>
+<dd>
+
+<p>This option says to keep each pixel the same hue as
 it is in the input; just adjust its brightness.  You normally want this;
 the only reason it is not the default behavior is backward compatibility
 with a design mistake.
 
-<p>By default, <B>pnmnorm</B> normalizes contrast in each component
-independently (except that the meaning of the <B>-wpercent</B> and
-<B>-bpercent</B> options are based on the overall brightnesses of the
+<p>By default, <b>pnmnorm</b> normalizes contrast in each component
+independently (except that the meaning of the <b>-wpercent</b> and
+<b>-bpercent</b> options are based on the overall brightnesses of the
 colors, not each component taken separately).  So if you have a color
-which is intensely red but dimly green, <B>pnmnorm</B> would make the
+which is intensely red but dimly green, <b>pnmnorm</b> would make the
 red more intense and the green less intense, so you end up with a
 different hue than you started with.
 
+<dt><b>-midvalue=</b><i>N</i>
+<dt><b>-middle=</b><i>N</i>
+<dd>
+
 <p>When you specify <b>-midvalue=</b><i>N</i>, <b>pnmnorm</b> uses a quadratic
 function to map old brightnesses to new ones, making sure that an old
 brightness of <i>N</i> becomes 50% bright in the output.  You can override
@@ -220,16 +244,16 @@ fit), <b>pnmnorm</b> just ignores your <b>-midvalue</b> and maps linearly.
 
 <b>-midvalue</b> and <b>-middle</b> were new in Netpbm 10.57 (December 2011).
 
-<P>If you specify <B>-keephues</B>, <B>pnmnorm</B> would likely leave
+<p>If you specify <b>-keephues</b>, <b>pnmnorm</b> would likely leave
 this pixel alone, since its overall brightness is medium.
 
-<P><B>-keephues</B> can cause clipping, because a certain color may be
+<p><b>-keephues</b> can cause clipping, because a certain color may be
 below a target intensity while one of its components is saturated.
-Where that's the case, <B>pnmnorm</B> uses the maximum representable
+Where that's the case, <b>pnmnorm</b> uses the maximum representable
 intensity for the saturated component and the pixel ends up with less
 overall intensity, and a different hue, than it is supposed to have.
 
-<P>This option is meaningless on grayscale images.
+<p>This option is meaningless on grayscale images.
 
 <p>When you <em>don't</em> specify <b>-keephues</b>, the
 <b>-luminosity</b>, <b>-colorvalue</b>, and <b>-saturation</b> options
@@ -238,13 +262,17 @@ components), but are meaningless when it comes to applying the
 transfer function (since it is applied to each individual RGB
 component).
 
-<P>Before Netpbm 9.25 (March 2002), there was no <B>-keephues</B> option.
+<p>Before Netpbm 9.25 (March 2002), there was no <b>-keephues</b> option.
 
+<dt><b>-luminosity</b>
+<dt><b>-colorvalue</b>
+<dt><b>-saturation</b>
+<dd>
 <p><b>-luminosity</b>, <b>-colorvalue</b>, and <b>-saturation</b> determine
 what property of the pixels <b>pnmnorm</b> normalizes.  I.e., what kind of
 brightness.  You cannot specify more than one of these.
 
-<P>The <B>-luminosity</B> option says to use the luminosity (i.e. the
+<p>The <b>-luminosity</b> option says to use the luminosity (i.e. the
 "Y" in the YUV or YCbCr color space) as the pixel's brightness.  The
 luminosity is a measure of how bright a human eye would find the color,
 taking into account the fact that the human eye is more sensitive to some
@@ -252,21 +280,21 @@ RGB components than others.
 
 <p>This option is default.
 
-<P>This option is meaningless on grayscale images.
+<p>This option is meaningless on grayscale images.
 
-<P>Before Netpbm 10.28 (August 2005), there was no <B>-luminosity</B> option,
+<p>Before Netpbm 10.28 (August 2005), there was no <b>-luminosity</b> option,
 but its meaning was still the default.
 
-<P>Before Netpbm 10.28 (August 2005), there was no <B>-colorvalue</B> option.
+<p>Before Netpbm 10.28 (August 2005), there was no <b>-colorvalue</b> option.
 
-<P>The <B>-colorvalue</B> option says to use the color value (i.e. the
+<p>The <b>-colorvalue</b> option says to use the color value (i.e. the
 "V" in the HSV color space) as the pixel's brightness.  The
 color value is the gamma-adjusted intensity of the most intense RGB
 component.
 
-<P>This option is meaningless on grayscale images.
+<p>This option is meaningless on grayscale images.
 
-<P>Before Netpbm 10.28 (August 2005), there was no <B>-colorvalue</B> option.
+<p>Before Netpbm 10.28 (August 2005), there was no <b>-colorvalue</b> option.
 
 <p>The <b>-saturation</b> option says to use the saturation (i.e. the
 "S" in the HSV color space) as the pixel's brightness.  The
@@ -279,28 +307,28 @@ intense RGB component (all intensities gamma-adjusted).
 
 <p>This option is meaningless on grayscale images.
 
-<P>Before Netpbm 10.28 (August 2005), there was no <B>-colorvalue</B> option.
-
-
-
-<H2 id="seealso">SEE ALSO</H2>
-
-<B><A HREF="pnmhisteq.html">pnmhisteq</A></B>,
-<B><A HREF="pamlevele.html">pamlevels</A></B>,
-<B><A HREF="ppmhist.html">ppmhist</A></B>,
-<B><A HREF="pgmhist.html">pgmhist</A></B>,
-<B><A HREF="pambrighten.html">pambrighten</A></B>,
-<B><A HREF="ppmdim.html">ppmdim</A></B>,
-<B><A HREF="pnmgamma.html">pnmgamma</A></B>,
-<B><A HREF="pnm.html">pnm</A></B>
-
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-</UL>
-</BODY>
-</HTML>
+<p>Before Netpbm 10.28 (August 2005), there was no <b>-colorvalue</b> option.
+
+</dl>
+
+<h2 id="seealso">SEE ALSO</h2>
+
+<b><a href="pnmhisteq.html">pnmhisteq</a></b>,
+<b><a href="pamlevels.html">pamlevels</a></b>,
+<b><a href="ppmhist.html">ppmhist</a></b>,
+<b><a href="pgmhist.html">pgmhist</a></b>,
+<b><a href="pambrighten.html">pambrighten</a></b>,
+<b><a href="ppmdim.html">ppmdim</a></b>,
+<b><a href="pnmgamma.html">pnmgamma</a></b>,
+<b><a href="pnm.html">pnm</a></b>
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+</ul>
+</body>
+</html>
diff --git a/pnmpad.html b/pnmpad.html
index 5b9208b4..7847a502 100644
--- a/pnmpad.html
+++ b/pnmpad.html
@@ -193,8 +193,9 @@ This causes verbose messages.
   
   <pre>
     <kbd>
-      pad=($(pnmpad -reportonly -left=10 -right=10 -top=10 -bottom=10))
-      pbmmake -gray 10 10 | pnmpaste input.ppm ${pad[0]} ${pad[2]} -
+    pad=($(pnmpad -reportonly -left=10 -right=10 -top=10 -bottom=10 input.ppm))
+    pbmmake -gray ${pad[4]} ${pad[5]} | \
+      pnmpaste input.ppm ${pad[0]} ${pad[2]} -
     </kbd>
   </pre>
     
diff --git a/pnmpaste.html b/pnmpaste.html
index 8342965e..92b6672b 100644
--- a/pnmpaste.html
+++ b/pnmpaste.html
@@ -1,27 +1,28 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmpaste User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmpaste</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmpaste User Manual</title></head>
+<body>
+<h1>pnmpaste</h1>
 Updated: 16 December 2018
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 pnmpaste - paste a rectangle into a PNM image
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pnmpaste</B>
+<b>pnmpaste</b>
 
-[<B>-replace</B>|<B>-or</B>|<B>-and</B>|<B>-xor</B>]
+[<b>-replace</b> | <b>-or</b> | <b>-and</b> | <b>-xor</b> |
+<b>-nor</b> | <b>-nand</b> | <b>-nxor</b>]
 
-<I>frompnmfile</i> <i>x</i> <i>y</I>
-[<I>intopnmfile</I>]
+<i>frompnmfile</i> <i>x</i> <i>y</i>
+[<i>intopnmfile</i>]
 
-<P>You can abbreviate all options to their shortest unique prefix.
+<p>You can abbreviate all options to their shortest unique prefix.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -42,28 +43,37 @@ 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).
 
-<P>If any part of the pasted image does not fit within the base image,
+<p>If any part of the pasted image does not fit within the base image,
 <b>pnmpaste</b> fails.
 
-<p>This tool is most useful in combination with <I>pamcut</I>.  For
+<p>This tool is most useful in combination with <i>pamcut</i>.  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.
 
-<P>Another useful companion tool is <B>pbmmask</B>.
+<p>Another useful companion tool is <b>pbmmask</b>.
 
-<P><B>pamcomp</B> is a more general tool, except that it lacks the
+<p><b>pamcomp</b> is a more general tool, except that it lacks the
 "or," "and," and "xor" functions.
-<B>pamcomp</B> allows you to specify a transparency mask in order to have
+<b>pamcomp</b> 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.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>The option specifies the operation to use when doing the paste.
-The default is <B>-replace</B>, which means to do the obvious paste:
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pnmpaste</b> recognizes the following
+command line options:
+
+<dl compact>
+<dt><b>-replace</b>, <b>-or</b>, <b>-and</b>, <b>-xor</b>,
+<b>-nor</b>, <b>-nand</b>, <b>-nxor</b>
+<dd>
+<p>These option specify the operation to use when doing the paste.
+The default is <b>-replace</b>, which means to do the obvious paste:
 replace pixels of the "into" image with those of the
 "from" image.
 
@@ -71,8 +81,8 @@ replace pixels of the "into" image with those of the
 and <b>nxor</b> 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 image, where white is TRUE and black is
-FALSE.
+corresponding pixels of the two input images, where white is TRUE and black
+is FALSE.
 
 <p>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
@@ -81,30 +91,31 @@ in boolean arithmetic.
 
 <p><b>-nand</b>, <b>-nor</b>, and <b>-nxor</b> were new in Netpbm 10.85
 (December 2018).
+
+</dl>
   
-  
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="pamcomp.html">pamcomp</A></B>,
-<B><A HREF="pamcut.html">pamcut</A></B>,
-<B><A HREF="pnminvert.html">pnminvert</A></B>,
-<B><A HREF="pnmarith.html">pnmarith</A></B>,
-<B><A HREF="pbmmask.html">pbmmask</A></B>,
-<B><A HREF="pnm.html">pnm</A></B>
+<b><a href="pamcomp.html">pamcomp</a></b>,
+<b><a href="pamcut.html">pamcut</a></b>,
+<b><a href="pnminvert.html">pnminvert</a></b>,
+<b><a href="pnmarith.html">pnmarith</a></b>,
+<b><a href="pbmmask.html">pbmmask</a></b>,
+<b><a href="pnm.html">pnm</a></b>
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 1989, 1991 by Jef Poskanzer.
 
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pnmquantall.html b/pnmquantall.html
index 389d87ea..fe2cfdbf 100644
--- a/pnmquantall.html
+++ b/pnmquantall.html
@@ -55,16 +55,18 @@ it gives you access to the various options of <b>pnmcolormap</b> and
 
 <h2 id="options">OPTIONS</h2>
 
-<p>In addition to the options common to all programs based on libnetpbm
-(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
-Common Options</a>), <b>pnmquantall</b> recognizes the following
-command line option:
+<p><b>pnmquantall</b> recognizes the following command line option:
 
 <dl compact>
 <dt><b>-ext</b> <i>extension</i>
-<dd>Specify an extension for the output files.  By default the input files are overwritten.
+<dd>Specify an extension for the output files.  By default the input files
+are overwritten.
 </dl>
 
+<p><b>pnmquantall</b> does not recognize the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)  However, the <b>-version</b> option works.
+
 <h2 id="seealso">SEE ALSO</h2>
 
 <b><a href="pnmquant.html">pnmquant</a></b>,
diff --git a/pnmscale.html b/pnmscale.html
index f14903cc..9d86609c 100644
--- a/pnmscale.html
+++ b/pnmscale.html
@@ -1,17 +1,15 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmscale User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmscale</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmscale User Manual</title></head>
+<body>
+<h1>pnmscale</h1>
 Updated: 02 February 2009
-<BR>
-<A HREF="#index">Table Of Contents</A>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
-<B>pnmscale</B> - replaced by pamscale
+<b>pnmscale</b> - replaced by pamscale
 
 
-<H2>DESCRIPTION</H2>
+<h2>DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -29,8 +27,8 @@ its age.  But now it would just be clutter.
 <b>pnmscale</b>.  Features that are in <b>pamscale</b> but not <b>pnmscale</b>
 are indicated by statements that they didn't exist before 10.20.
 
-</BODY>
-</HTML>
+</body>
+</html>
 
 
 
diff --git a/pnmtojbig.html b/pnmtojbig.html
index c62b3393..f4a18a2e 100644
--- a/pnmtojbig.html
+++ b/pnmtojbig.html
@@ -108,17 +108,16 @@ approximately 35 stripes will be used for the whole image.
 
 <dt><b>-m</b> <i>number</i>
 
-<dd>Select the maximum horizontal offset of the adaptive template
-pixel.  The JBIG encoder uses a number of neighbour pixels in order to
-get statistical a priori knowledge of the probability, whether the
-next pixel will be black or white.  One single pixel out of this
-template of context neighbor pixels can be moved around.  Especially
-for dithered images it can be a significant advantage to have one
-neighbor pixel which has a distance large enough to cover the period
-of a dither function.  By default, the adaptive template pixel can be
-moved up to 8 pixels away.  This encoder supports up to 23 pixels,
-however as decoders are only required to support at least a distance
-of 16 pixels by the standard, no higher value than 16 for
+<dd>Select the maximum horizontal offset of the adaptive template pixel.  The
+JBIG encoder uses a number of neighbour pixels in order to get statistical a
+priori knowledge of the probability, whether the next pixel will be black or
+white.  One single pixel out of this template of context neighbor pixels can
+be moved around.  Especially for dithered images it can be a significant
+advantage to have one neighbor pixel which has a distance large enough to
+cover the period of a dither function.  By default, the adaptive template
+pixel can be moved up to 8 pixels away.  This encoder go up to 23 pixels,
+however as decoders are only required to handle at least a distance of 16
+pixels by the standard, no higher value than 16 for
 <i>number</i> is recommended in order to maintain interoperability
 with other JBIG implementations.  The maximal vertical offset of the
 adaptive template pixel is always zero.
diff --git a/pnmtojpeg.html b/pnmtojpeg.html
index 07f61ea7..b4b842f7 100644
--- a/pnmtojpeg.html
+++ b/pnmtojpeg.html
@@ -1,111 +1,116 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Pnmtojpeg User Manual</TITLE></HEAD>
-<BODY>
-<H1>PNMTOJPEG</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmtojpeg User Manual</title></head>
+<body>
+<h1>pnmtojpeg</h1>
 Updated: 23 April 2007
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 pnmtojpeg - convert PNM image to a JFIF ("JPEG") image
 
-<H2 id="synopsis">SYNOPSIS</H2>
-
-<B>pnmtojpeg</B>
-[<B>-exif=</B><I>filespec</I>]
-[<B>-quality=</B><I>n</I>]
-[{<B>-grayscale</B>|<B>-greyscale</B>}]
-[<B>-density=</B><I>n</I><b>x</b><i>n</i>[<b>dpi</b>,<b>dpcm</b>]]
-[<B>-optimize</B>|<b>-optimise</b>]
-[<B>-rgb</B>]
-[<B>-progressive</B>]
-[<B>-comment=</B><I>text</I>]
-[<B>-dct=</b>{<b>int</B>|<b>fast</b>|<b>float</b>}]
-[<B>-arithmetic</b>]
-[<B>-restart=</B><I>n</I>]
-[<B>-smooth=</B><I>n</I>]
-[<B>-maxmemory=</B><I>n</I>]
-[<B>-verbose</B>]
-[<B>-baseline</B>]
-[<B>-qtables=</B><I>filespec</I>]
-[<B>-qslots=n[,...]</B>]
-[<B>-sample=</B><I>H</i><b>x</b><i>V</i>[,...]]
-[<B>-scans=</B><I>filespec</I>]
-[<B>-tracelevel=</b><i>N</i>]
-
-<I>filename</I>
+<h2 id="synopsis">SYNOPSIS</h2>
+
+<b>pnmtojpeg</b>
+[<b>-exif=</b><i>filespec</i>]
+[<b>-quality=</b><i>n</i>]
+[{<b>-grayscale</b>|<b>-greyscale</b>}]
+[<b>-density=</b><i>n</i><b>x</b><i>n</i>[<b>dpi</b>,<b>dpcm</b>]]
+[<b>-optimize</b>|<b>-optimise</b>]
+[<b>-rgb</b>]
+[<b>-progressive</b>]
+[<b>-comment=</b><i>text</i>]
+[<b>-dct=</b>{<b>int</b>|<b>fast</b>|<b>float</b>}]
+[<b>-arithmetic</b>]
+[<b>-restart=</b><i>n</i>]
+[<b>-smooth=</b><i>n</i>]
+[<b>-maxmemory=</b><i>n</i>]
+[<b>-verbose</b>]
+[<b>-baseline</b>]
+[<b>-qtables=</b><i>filespec</i>]
+[<b>-qslots=n[,...]</b>]
+[<b>-sample=</b><i>H</i><b>x</b><i>V</i>[,...]]
+[<b>-scans=</b><i>filespec</i>]
+[<b>-tracelevel=</b><i>N</i>]
+
+<i>filename</i>
 
 <p>Minimum unique abbreviation of option is acceptable.  You may use double
 hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
-<p><B>pnmtojpeg</B> converts the named PBM, PGM, or PPM image file, or
+<p><b>pnmtojpeg</b> converts the named PBM, PGM, or PPM image file, or
 the standard input if no file is named, to a JFIF file on the standard
 output.
 
-<P><B>pnmtojpeg</B> uses the Independent JPEG Group's JPEG library to
-create the output file.  See <B><A
-HREF="http://www.ijg.org">http://www.ijg.org</A> </B> for information
+<p><b>pnmtojpeg</b> uses the Independent JPEG Group's JPEG library to
+create the output file.  See <b><a
+href="http://www.ijg.org">http://www.ijg.org</a> </b> for information
 on the library.
 
-<P>"JFIF" is the correct name for the image format commonly
+<p>"JFIF" is the correct name for the image format commonly
 known as "JPEG." Strictly speaking, JPEG is a method of
 compression.  The image format using JPEG compression that is by far
 the most common is JFIF.  There is also a subformat of TIFF that uses
 JPEG compression.
 
-<P>EXIF is an image format that is a subformat of JFIF (to wit, a JFIF
+<p>EXIF is an image format that is a subformat of JFIF (to wit, a JFIF
 file that contains an EXIF header as an APP1 marker).
-<B>pnmtojpeg</B> creates an EXIF image when you specify the
-<B>-exif</B> option.
+<b>pnmtojpeg</b> creates an EXIF image when you specify the
+<b>-exif</b> option.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<p>The basic options are:
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pnmtojpeg</b> recognizes the following
+command line options:
 
-<DL COMPACT>
-<DT><B>-exif=</B><I>filespec</I>
+<h3 id="basicopts">Basic Options</h3>
 
-<DD>
+<dl compact>
+<dt><b>-exif=</b><i>filespec</i>
+
+<dd>
 This option specifies that the output image is to be EXIF (a subformat
 of JFIF), i.e. it will have an EXIF header as a JFIF APP1 marker.
 The contents of that marker are the contents of the specified file.
-The special value <B>-</B> 
+The special value <b>-</b> 
 means to read the EXIF header contents from standard input.  It is
 invalid to specify standard input for both the EXIF header and the
 input image.
-<P>
+<p>
 The EXIF file starts with a two byte field which is the length of
 the file, including the length field, in pure binary, most significant
 byte first.  The special value of zero for the length field means there
-is to be no EXIF header, i.e. the same as no <B>-exif</B>
+is to be no EXIF header, i.e. the same as no <b>-exif</b>
 option.  This is useful for when you convert a file from JFIF to PNM
-using <B>jpegtopnm</B>,
+using <b>jpegtopnm</b>,
 then transform it, then convert it back to JFIF with
-<B>pnmtojpeg</B>, and you don't know whether or not it includes an EXIF header.
-<B>jpegtopnm</B>
+<b>pnmtojpeg</b>, and you don't know whether or not it includes an EXIF header.
+<b>jpegtopnm</b>
 creates an EXIF file containing nothing but two bytes of zero when
 the input JFIF file has no EXIF header.  Thus, you can transfer
 any EXIF header from the input JFIF to the output JFIF without
 worrying about whether an EXIF header actually exists.
-<P>
+<p>
 The contents of the EXIF file after the length field are the exact
 byte for byte contents of the APP1 marker, not counting the length
 field, that constitutes the EXIF header.
 
-<DT><B>-quality=</B><I>n</I>
+<dt><b>-quality=</b><i>n</i>
 
-<DD>Scale quantization tables to adjust image quality.  <I>n</I> is 0
+<dd>Scale quantization tables to adjust image quality.  <i>n</i> is 0
 (worst) to 100 (best); default is 75.  Below about 25 can produce images
 some interpreters won't be able to interpret.  See below for more info.
 
-<DT><B>-grayscale</B>
-<DT><B>-greyscale</B>
+<dt><b>-grayscale</b>
+<dt><b>-greyscale</b>
 <dt><b>-rgb</b>
 
 <dd>These options determine the color space used in the JFIF output.
@@ -129,7 +134,7 @@ The extra CPU time probably indicates that processing of all the extra
 compressed data consumed all the CPU time saved by not having to
 convert the RGB inputs to YCbCr.
 
-<P>Grayscale format takes up a lot less space and takes less time to create
+<p>Grayscale format takes up a lot less space and takes less time to create
 and process than the color formats, even if the image contains nothing
 but black, white, and gray.
 
@@ -173,30 +178,30 @@ image.
 <b>pnmtojpeg</b> always created a JFIF with a density of 1x1 in
 unspecified units.
 
-<DT><B>-optimize</B>
+<dt><b>-optimize</b>
 
-<DD> Perform optimization of entropy encoding parameters.  Without
-this, <B>pnmtojpeg</B> uses default encoding parameters.
-<B>-optimize</B> usually makes the JFIF file a little smaller, but
-<B>pnmtojpeg</B> runs somewhat slower and needs much more memory.
+<dd> Perform optimization of entropy encoding parameters.  Without
+this, <b>pnmtojpeg</b> uses default encoding parameters.
+<b>-optimize</b> usually makes the JFIF file a little smaller, but
+<b>pnmtojpeg</b> runs somewhat slower and needs much more memory.
 Image quality and speed of decompression are unaffected by
-<B>-optimize</B>.
+<b>-optimize</b>.
 
-<DT><B>-progressive</B>
+<dt><b>-progressive</b>
 
-<DD>
+<dd>
 Create a progressive JPEG file (see below).
-<DT><B>-comment=</B><I>text</I>
+<dt><b>-comment=</b><i>text</i>
 
-<DD>
+<dd>
 Include a comment marker in the JFIF output, with comment text 
-<I>text</I>.
+<i>text</i>.
 
 Without this option, there are no comment markers in the output.
 
-</DL>
+</dl>
 
-<P>The <B>-quality</B> option lets you trade off compressed file size
+<p>The <b>-quality</b> option lets you trade off compressed file size
 against quality of the reconstructed image: the higher the quality
 setting, the larger the JFIF file, and the closer the output image
 will be to the original input.  Normally you want to use the lowest
@@ -204,11 +209,11 @@ quality setting (smallest file) that decompresses into something
 visually indistinguishable from the original image.  For this purpose
 the quality setting should be between 50 and 95 for reasonable
 results; the default of 75 is often about right.  If you see defects
-at <B>-quality=75</B>, then go up 5 or 10 counts at a time until you
+at <b>-quality=75</b>, then go up 5 or 10 counts at a time until you
 are happy with the output image.  (The optimal setting will vary from
 one image to another.)
 
-<p><B>-quality=100</B> generates a quantization table of all 1's,
+<p><b>-quality=100</b> generates a quantization table of all 1's,
 minimizing loss in the quantization step (but there is still
 information loss in subsampling, as well as roundoff error).  This
 setting is mainly of interest for experimental purposes.  Quality
@@ -216,18 +221,18 @@ values above about 95 are <em>not</em> recommended for normal use; the
 compressed file size goes up dramatically for hardly any gain in
 output image quality.
 
-<P>In the other direction, quality values below 50 will produce very
+<p>In the other direction, quality values below 50 will produce very
 small files of low image quality.  Settings around 5 to 10 might be
 useful in preparing an index of a large image library, for example.
-Try <B>-quality=2</B> (or so) for some amusing Cubist effects.  (Note:
+Try <b>-quality=2</b> (or so) for some amusing Cubist effects.  (Note:
 quality values below about 25 generate 2-byte quantization tables,
-which are considered optional in the JFIF standard.  <B>pnmtojpeg</B>
+which are considered optional in the JFIF standard.  <b>pnmtojpeg</b>
 emits a warning message when you give such a quality value, because
 some other JFIF programs may be unable to decode the resulting file.
-Use <B>-baseline</B> if you need to ensure compatibility at low
+Use <b>-baseline</b> if you need to ensure compatibility at low
 quality values.)
 
-<P>The <B>-progressive</B> option creates a "progressive
+<p>The <b>-progressive</b> option creates a "progressive
 JPEG" file.  In this type of JFIF file, the data is stored in
 multiple scans of increasing quality.  If the file is being
 transmitted over a slow communications link, the decoder can use the
@@ -245,27 +250,28 @@ JPEG file at all.
 might consider the JPEG2000 format instead.  See <a
 href="pamtojpeg2k.html">pamtojpeg2k</a>.
 
-<p>Options for advanced users:
-<DL COMPACT>
+<h3 id="advancedopts">Advanced options</h3>
+
+<dl compact>
 
-<DT><B>-dct=int</B>
+<dt><b>-dct=int</b>
 
-<DD>Use integer DCT method (default).
+<dd>Use integer DCT method (default).
 
-<DT><B>-dct=fast</B>
+<dt><b>-dct=fast</b>
 
-<DD>Use fast integer DCT (less accurate).
+<dd>Use fast integer DCT (less accurate).
 
-<DT><B>-dct=float</B>
+<dt><b>-dct=float</b>
 
-<DD>Use floating-point DCT method.  The float method is very slightly
+<dd>Use floating-point DCT method.  The float method is very slightly
 more accurate than the int method, but is much slower unless your
 machine has very fast floating-point hardware.  Also note that results
 of the floating-point method may vary slightly across machines, while
 the integer methods should give the same results everywhere.  The fast
 integer method is much less accurate than the other two.
 
-<DT><B>-arithmetic</b>
+<dt><b>-arithmetic</b>
 <dd>Use arithmetic coding.  Default is Huffman encoding.  Arithmetic coding
 tends to get you a smaller result.
 
@@ -286,111 +292,111 @@ with the message, "Sorry, there are legal restrictions on
 arithmetic coding" or "Sorry, arithmetic coding not
 supported," this is the problem.
      
-<DT><B>-restart=</B><I>n</I>
+<dt><b>-restart=</b><i>n</i>
 
-<DD>
-Emit a JPEG restart marker every <I>n</I> MCU rows, or every <I>n</I>
-MCU blocks if you append <B>B</B> to the number.  <B>-restart 0</B>
+<dd>
+Emit a JPEG restart marker every <i>n</i> MCU rows, or every <i>n</i>
+MCU blocks if you append <b>B</b> to the number.  <b>-restart 0</b>
 (the default) means no restart markers.
 
-<DT><B>-smooth=</B><I>n</I>
+<dt><b>-smooth=</b><i>n</i>
 
-<DD>
-Smooth the input image to eliminate dithering noise.  <I>n</I>,
+<dd>
+Smooth the input image to eliminate dithering noise.  <i>n</i>,
 ranging from 1 to 100, indicates the strength of smoothing.  0 (the
 default) means no smoothing.
 
-<DT><B>-maxmemory=</B><I>n</I>
+<dt><b>-maxmemory=</b><i>n</i>
 
-<DD>
+<dd>
 Set a limit for amount of memory to use in processing large images.  Value is
 in thousands of bytes, or millions of bytes if you append
-<B>M</B> to the number.  For example, <B>-max=4m</B>
-selects 4,000,000 bytes.  If <B>pnmtojpeg</B>
+<b>M</b> to the number.  For example, <b>-max=4m</b>
+selects 4,000,000 bytes.  If <b>pnmtojpeg</b>
 needs more space, it will use temporary files.
 
-<DT><B>-verbose</B>
+<dt><b>-verbose</b>
 
-<DD>
+<dd>
 Print to the Standard Error file messages about the conversion process.
 This can be helpful in debugging problems.
-</DL>
+</dl>
 
-<P>The <B>-restart</B> option tells <B>pnmtojpeg </B> to insert extra
+<p>The <b>-restart</b> option tells <b>pnmtojpeg </b> to insert extra
 markers that allow a JPEG decoder to resynchronize after a
 transmission error.  Without restart markers, any damage to a
 compressed file will usually ruin the image from the point of the
 error to the end of the image; with restart markers, the damage is
 usually confined to the portion of the image up to the next restart
 marker.  Of course, the restart markers occupy extra space.  We
-recommend <B>-restart=1</B> for images that will be transmitted
+recommend <b>-restart=1</b> for images that will be transmitted
 across unreliable networks such as Usenet.
 
-<P>The <B>-smooth</B> option filters the input to eliminate
+<p>The <b>-smooth</b> option filters the input to eliminate
 fine-scale noise.  This is often useful when converting dithered
 images to JFIF: a moderate smoothing factor of 10 to 50 gets rid of
 dithering patterns in the input file, resulting in a smaller JFIF file
 and a better-looking image.  Too large a smoothing factor will visibly
 blur the image, however.
 
-<P>Options for wizards:
+<h3 id="wizardopts">Wizard Options</h3>
 
-<DL COMPACT>
-<DT><B>-baseline</B>
+<dl compact>
+<dt><b>-baseline</b>
 
-<DD>Force baseline-compatible quantization tables to be generated.
+<dd>Force baseline-compatible quantization tables to be generated.
 This clamps quantization values to 8 bits even at low quality
 settings.  (This switch is poorly named, since it does not ensure that
 the output is actually baseline JPEG.  For example, you can use
-<B>-baseline</B> and <B>-progressive</B> together.)
+<b>-baseline</b> and <b>-progressive</b> together.)
 
-<DT><B>-qtables=</B><I>filespec</I>
+<dt><b>-qtables=</b><i>filespec</i>
 
-<DD>Use the quantization tables given in the specified text file.
+<dd>Use the quantization tables given in the specified text file.
 
-<DT><B>-qslots=n[,...]</B>
+<dt><b>-qslots=n[,...]</b>
 
-<DD>Select which quantization table to use for each color component.
+<dd>Select which quantization table to use for each color component.
 
-<DT><B>-sample=</B><I>H</i><b>x</b><i>V</i>[,...]
+<dt><b>-sample=</b><i>H</i><b>x</b><i>V</i>[,...]
 
-<DD>Set JPEG sampling factors for each color component.
+<dd>Set JPEG sampling factors for each color component.
 
-<DT><B>-scans=</B><I>filespec</I>
+<dt><b>-scans=</b><i>filespec</i>
 
-<DD>Use the scan script given in the specified text file.  See below
+<dd>Use the scan script given in the specified text file.  See below
 for information on scan scripts.
 
-<DT><B>-tracelevel=</B><I>N</I>
+<dt><b>-tracelevel=</b><i>N</i>
 
-<DD>This sets the level of debug tracing the program outputs as it runs.
+<dd>This sets the level of debug tracing the program outputs as it runs.
 0 means none, and is the default.  This level primarily controls tracing
 of the JPEG library, and you can get some pretty interesting information
 about the compression process.
 
-</DL>
+</dl>
 
-<P>The "wizard" options are intended for experimentation
+<p>The "wizard" options are intended for experimentation
 with JPEG.  If you don't know what you are doing, <strong>don't use
 them</strong>.  These switches are documented further in the file
 wizard.doc that comes with the Independent JPEG Group's JPEG library.
 
-<H2 id="examples">EXAMPLES</H2>
+<h2 id="examples">EXAMPLES</h2>
 
-<P>This example compresses the PPM file foo.ppm with a quality factor
+<p>This example compresses the PPM file foo.ppm with a quality factor
 of 60 and saves the output as foo.jpg:
 
 <pre>
-    <B>pnmtojpeg -quality=60 foo.ppm &gt; foo.jpg</B>
+    <b>pnmtojpeg -quality=60 foo.ppm &gt; foo.jpg</b>
 </pre>
 
 <p>Here's a more typical example.  It converts from BMP to JFIF:
 
 <pre>
-    <B>cat foo.bmp | bmptoppm | pnmtojpeg &gt; foo.jpg</B>
+    <b>cat foo.bmp | bmptoppm | pnmtojpeg &gt; foo.jpg</b>
 </pre>
 
-<h2 id="loss">JPEG Loss</h2>
+<h2 id="loss">JPEG LOSS</h2>
 
 <p>When you compress with JPEG, you lose information -- i.e. the resulting
 image has somewhat lower quality than the original.  This is a characteristic
@@ -400,24 +406,24 @@ to JFIF, you will lose quality.  The more you do it, the more you lose.
 Drawings (charts, cartoons, line drawings, and such with few colors
 and sharp edges) suffer the most.
 
-<P>To avoid this, you can use a compressed image format other than
+<p>To avoid this, you can use a compressed image format other than
 JPEG.  PNG and JPEG2000 are good choices, and Netpbm contains converters
 for those.
 
 <p>If you need to use JFIF on a drawing, you should experiment with
-<B>pnmtojpeg</B>'s <B>-quality</B> and <B>-smooth</B> options to get a
-satisfactory conversion.  <B>-smooth 10</B> or so is often helpful.
+<b>pnmtojpeg</b>'s <b>-quality</b> and <b>-smooth</b> options to get a
+satisfactory conversion.  <b>-smooth 10</b> or so is often helpful.
 
-<P>Because of the loss, you should do all the manipulation you have to
+<p>Because of the loss, you should do all the manipulation you have to
 do on the image in some other format and convert to JFIF as the last
 step.  And if you can keep a copy in the original format, so much the
 better.
 
-The <B>-optimize</B> option to <B>pnmtojpeg</B> is worth using when
+The <b>-optimize</b> option to <b>pnmtojpeg</b> is worth using when
 you are making a "final" version for posting or archiving.
 It's also a win when you are using low quality settings to make very
 small JFIF files; the percentage improvement is often a lot more than
-it is on larger files.  (At present, <B>-optimize</B> mode is
+it is on larger files.  (At present, <b>-optimize</b> mode is
 automatically in effect when you generate a progressive JPEG file).
 
 <p>You can do flipping and rotating transformations losslessly with
@@ -426,118 +432,123 @@ Jpeg Group's JPEG library.  <b>jpegtran</b> exercises its intimate
 knowledge of the way JPEG works to do the transformation without ever
 actually decompressing the image.
 
-<h2 id="otherprog"></h2>
+<h2 id="otherprog">OTHER PROGRAMS</h2>
 
-<P>Another program, <B>cjpeg</B>, is similar.  <B>cjpeg</B> is
+<p>Another program, <b>cjpeg</b>, is similar.  <b>cjpeg</b> is
 maintained by the Independent JPEG Group and packaged with the JPEG
-library which <B>pnmtojpeg</B> uses for all its JPEG work.  Because of
+library which <b>pnmtojpeg</b> uses for all its JPEG work.  Because of
 that, you may expect it to exploit more current JPEG features.  Also,
-since you have to have the library to run <B>pnmtojpeg</B>, but not
-vice versa, <B>cjpeg</B> may be more commonly available.
+since you have to have the library to run <b>pnmtojpeg</b>, but not
+vice versa, <b>cjpeg</b> may be more commonly available.
 
-<p>On the other hand, <B>cjpeg</B> does not use the NetPBM libraries
-to process its input, as all the NetPBM tools such as <B>pnmtojpeg</B>
+<p>On the other hand, <b>cjpeg</b> does not use the NetPBM libraries
+to process its input, as all the NetPBM tools such as <b>pnmtojpeg</b>
 do.  This means it is less likely to be consistent with all the other
 programs that deal with the NetPBM formats.  Also, the command syntax
-of <B>pnmtojpeg</B> is consistent with that of the other Netpbm tools,
-unlike <B>cjpeg</B>.
+of <b>pnmtojpeg</b> is consistent with that of the other Netpbm tools,
+unlike <b>cjpeg</b>.
 
-<H2 id="scanscripts">SCAN SCRIPTS</H2>
+<h2 id="scanscripts">SCAN SCRIPTS</h2>
 
-<P>Use the <B>-scan</B> option to specify a scan script.  Or use the
-<B>-progressive</B> option to specify a particular built-in scan
+<p>Use the <b>-scan</b> option to specify a scan script.  Or use the
+<b>-progressive</b> option to specify a particular built-in scan
 script.
 
-<P>Just what a scan script is, and the basic format of the scan script
-file, is covered in the <B>wizard.doc</B> file that comes with the
+<p>Just what a scan script is, and the basic format of the scan script
+file, is covered in the <b>wizard.doc</b> file that comes with the
 Independent JPEG Group's JPEG library.  Scan scripts are same for
-<B>pnmtojpeg</B> as the are for <B>cjpeg</B>.
+<b>pnmtojpeg</b> as the are for <b>cjpeg</b>.
 
-<P>This section contains additional information that isn't, but
+<p>This section contains additional information that isn't, but
 probably should be, in that document.
 
-<P>First, there are many restrictions on what is a valid scan script.
-The JPEG library, and thus <B>pnmtojpeg</B>, checks thoroughly for any
+<p>First, there are many restrictions on what is a valid scan script.
+The JPEG library, and thus <b>pnmtojpeg</b>, checks thoroughly for any
 lack of compliance with these restrictions, but does little to tell
 you how the script fails to comply.  The messages are very general and
 sometimes untrue.
 
-<P>
+<p>
 To start with, the entries for the DC coefficient must come before any
 entries for the AC coefficients.  The DC coefficient is Coefficient 0;
 all the other coefficients are AC coefficients.  So in an entry for
 the DC coefficient, the two numbers after the colon must be 0 and 0.
 In an entry for AC coefficients, the first number after the colon must
 not be 0.
-<P>
+<p>
 In a DC entry, the color components must be in increasing order.
 E.g. "0,2,1" before the colon is wrong.  So is "0,0,0".
-<P>
+<p>
 In an entry for an AC coefficient, you must specify only one color
 component.  I.e. there can be only one number before the colon.
-<P>
+<p>
 In the first entry for a particular coefficient for a particular color
 component, the "Ah" value must be zero, but the Al value can be any
 valid bit number.  In subsequent entries, Ah must be the Al value from
 the previous entry (for that coefficient for that color component),
 and the Al value must be one less than the Ah value.
-<P>
+<p>
 The script must ultimately specify at least some of the DC coefficient
 for every color component.  Otherwise, you get the error message
 "Script does not transmit all the data."  You need not specify all of
 the bits of the DC coefficient, or any of the AC coefficients.
-<P>
+<p>
 There is a standard option in building the JPEG library to omit scan
 script capability.  If for some reason your library was built with
 this option, you get the message "Requested feature was omitted at
 compile time."
 
-<H2 id="environment">ENVIRONMENT</H2>
+<h2 id="environment">ENVIRONMENT</h2>
 
-<DL COMPACT>
-<DT><B>JPEGMEM</B>
+<dl compact>
+<dt><b>JPEGMEM</b>
 
-<DD>If this environment variable is set, its value is the default
+<dd>If this environment variable is set, its value is the default
 memory limit.  The value is specified as described for the
-<B>-maxmemory</B> option.  An explicit <B>-maxmemory </B> option
-overrides any <B>JPEGMEM</B>.
+<b>-maxmemory</b> option.  An explicit <b>-maxmemory </b> option
+overrides any <b>JPEGMEM</b>.
 
-</DL>
+</dl>
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="jpegtopnm.html">jpegtopnm</A></B>,
-<B><A HREF="pnm.html">pnm</A></B>,
-<B>cjpeg</B> man page,
-<B>djpeg</b> man page,
-<B>jpegtran</B> man page,
-<B>rdjpgcom</B> man page,
-<B>wrjpgcom</B> man page
+<b><a href="jpegtopnm.html">jpegtopnm</a></b>,
+<b><a href="pnm.html">pnm</a></b>,
+<b>cjpeg</b> man page,
+<b>djpeg</b> man page,
+<b>jpegtran</b> man page,
+<b>rdjpgcom</b> man page,
+<b>wrjpgcom</b> man page
 
 <p>Wallace, Gregory K.  "The JPEG Still Picture Compression
 Standard", Communications of the ACM, April 1991 (vol. 34,
 no. 4), pp. 30-44.
 
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
-<B>pnmtojpeg</B> and this manual were derived in large part from
-<B>cjpeg</B>, by the Independent JPEG Group.  The program is otherwise
+<b>pnmtojpeg</b> and this manual were derived in large part from
+<b>cjpeg</b>, by the Independent JPEG Group.  The program is otherwise
 by Bryan Henderson on March 07, 2000.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#examples">EXAMPLES</A>
-<LI><A HREF="#loss">JPEG LOSS</A>
-<LI><A HREF="#otherprog">OTHER PROGRAMS</A>
-<LI><A HREF="#scanscripts">SCAN SCRIPTS</A>
-<LI><A HREF="#environment">ENVIRONMENT</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+  <ul>
+  <li><a href="#basicopts">Basic Options</a>
+  <li><a href="#advancedopts">Advanced options</a>
+  <li><a href="#wizardopts">Wizard Options</a>
+  </ul>
+<li><a href="#examples">EXAMPLES</a>
+<li><a href="#loss">JPEG LOSS</a>
+<li><a href="#otherprog">OTHER PROGRAMS</a>
+<li><a href="#scanscripts">SCAN SCRIPTS</a>
+<li><a href="#environment">ENVIRONMENT</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/pnmtopng.html b/pnmtopng.html
index 167291aa..e2c3f9bd 100644
--- a/pnmtopng.html
+++ b/pnmtopng.html
@@ -1,18 +1,17 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML>
-<HEAD><TITLE>Pnmtopng User Manual</TITLE></HEAD>
-<BODY>
-<H1>pnmtopng</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Pnmtopng User Manual</title></head>
+<body>
+<h1>pnmtopng</h1>
 Updated: 13 March 2019
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 pnmtopng - convert a PNM image to PNG
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>pnmtopng</B>
+<b>pnmtopng</b>
 [<b>-verbose</b>]
 [<b>-downscale</b>]
 [<b>-interlace</b>]
@@ -45,14 +44,14 @@ pnmtopng - convert a PNM image to PNG
 [<b>-comp_buffer_size=</b><i>n</i>]
 [<b>-force</b>]
 [<b>-libversion</b>]
-[<I>pnmfile</I>]
+[<i>pnmfile</i>]
 
 
-<?makeman .SH OPTION USAGE ?>
+<?makeman .sh option usage ?>
 <p>
 Obsolete options:
 <p>
-[<b>-filter </b><I>n</I>]
+[<b>-filter </b><i>n</i>]
 
 <p>
 Options available only in older versions:
@@ -63,18 +62,18 @@ Options available only in older versions:
 [<b>-time </b>[<i>yy</i>]<i>yy</i><b>-</b><i>mm</i><b>-</b><i>dd</i>
   <i>hh</i><b>:</b><i>mm</i><b>:</b><i>ss</i>]
 
-<P>Minimum unique abbreviation of option is acceptable.  You may use double
+<p>Minimum unique abbreviation of option is acceptable.  You may use double
 hyphens instead of single hyphen to denote options.  You may use white
 space in place of the equals sign to separate an option name from its value.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
 <p><b>pnmtopng</b> reads a PNM image as input and produces a PNG image as
 output.
 
-<P>Color component values in PNG files are either eight or sixteen
+<p>Color component values in PNG files are either eight or sixteen
 bits wide, so <b>pnmtopng</b> will automatically scale colors to have
 a maxval of 255 or 65535.
 
@@ -98,7 +97,9 @@ power of two minus one (255 and 65535 are good choices) to minimize
 the error.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
+
+<h3 id="notesyntax">Note: Option Syntax of Older Versions</h3>
 
 <p><b>pnmtopng</b> changed in Netpbm 10.30 (October 2005) to use the
 standard Netpbm command line syntax.  Before that, you could not
@@ -116,7 +117,7 @@ E.g.  The old shell command
 
 <pre>
 <kbd>
-   pnmtopng -phys 800 800 0 input.pnm >output.png
+   pnmtopng -phys 800 800 0 input.pnm &gt; output.png
 </kbd>
 </pre>
 
@@ -124,28 +125,35 @@ E.g.  The old shell command
 
 <pre>
 <kbd>
-   pnmtopng -size "800 800 0" input.pnm >output.png
+   pnmtopng -size "800 800 0" input.pnm &gt; output.png
 </kbd>
 </pre>
 
 <p>If you're writing a program that needs to work with both new and old
-<b>pnmtopng</b>, have it first try with the new syntax, and if it fails
+, have it first try with the new syntax, and if it fails
 with "unrecognized option," fall back to the old syntax.
 
-<DL COMPACT>
-<DT><B>-verbose</B>
-<DD>
+<h3 id="curroptions">Current Options</h3>
+
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>pnmtopng</b> recognizes the following
+command line options:
+
+<dl compact>
+<dt><b>-verbose</b>
+<dd>
 This causes <b>pnmtopng</b> to display information about the format of the
 output file.
 
-<DT><B>-downscale</B>
-<DD>
+<dt><b>-downscale</b>
+<dd>
 This enables <b>pnmtopng</b> to scale maxvalues of more then 65535 to 16
 bits. Since this means loss of image data, <b>pnmtopng</b> does not do it by
 default.
 
-<DT><B>-interlace</B>
-<DD>
+<dt><b>-interlace</b>
+<dd>
 This causes the PNG file to be interlaced, in Adam7 format.  The interlaced
 format is one in which the raster data starts with a low-resolution
 representation of the entire image, then continues with additional information
@@ -161,9 +169,9 @@ gradually paint down to the bottom.  But with an interlaced image, the
 displayer can start by showing a low-resolution version of the image, then
 gradually improve the display as more data arrives.
      
-<DT><B>-alpha=</b><i>filename</i>
+<dt><b>-alpha=</b><i>filename</i>
 
-<DD>This specifies the transparency (alpha) channel of the image.  You supply
+<dd>This specifies the transparency (alpha) channel of the image.  You supply
 the transparency channel as a standard PGM transparency mask (see
 the <a href="pgm.html">PGM</a> specification.  <b>pnmtopng</b> does not
 necessarily represents the transparency information as a transparency channel
@@ -172,21 +180,21 @@ palette, it will do so in order to make a smaller PNG file.
 <b>pnmtopng</b> even sorts the palette so it can omit the opaque colors
 from the transparency part of the palette and save space for the palette.
 
-<DT><B>-transparent=</b><i>color</i>
-<DD>
-<B>pnmtopng</B> marks the specified color as transparent in the PNG image.
+<dt><b>-transparent=</b><i>color</i>
+<dd>
+<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
+<p>Specify the color (<i>color</i>) as described for 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>.  If the color you specify is not present in the
-image, <B>pnmtopng</B> selects instead the color in the image that is
+E.g. <b>red</b> or
+<b>rgb:ff/00/0d</b>.  If the color you specify is not present in the
+image, <b>pnmtopng</b> selects instead the color in the image that is
 closest to the one you specify.  Closeness is measured as a Cartesian
 distance between colors in RGB space.  If multiple colors are
-equidistant, <B>pnmtopng</B> chooses one of them arbitrarily.
+equidistant, <b>pnmtopng</b> chooses one of them arbitrarily.
 
-<P>However, if you prefix your color specification with
+<p>However, if you prefix your color specification with
 "=", e.g.
 
 <pre>
@@ -195,19 +203,19 @@ equidistant, <B>pnmtopng</B> chooses one of them arbitrarily.
 </kbd>
 </pre>
 
-<P> only the exact color you specify will be transparent.  If that
+<p> only the exact color you specify will be transparent.  If that
 color does not appear in the image, there will be no transparency.
-<B>pnmtopng</B> issues an information message when this is the case.
+<b>pnmtopng</b> issues an information message when this is the case.
 
-<DT><B>-background=</b><i>color</i>
-<DD>
+<dt><b>-background=</b><i>color</i>
+<dd>
 Causes <b>pnmtopng</b> to create a background color chunk in the PNG output
 which can be used for subsequent transparency channel or transparent color
 conversions.  Specify <i>color</i> the same as for <b>-transparent</b>.
 
-<DT><B>-palette=</b><i>palettefile</i>
+<dt><b>-palette=</b><i>palettefile</i>
 
-<DD>This option specifies a palette to use in the PNG.  It forces
+<dd>This option specifies a palette to use in the PNG.  It forces
 <b>pnmtopng</b> to create the paletted (colormapped) variety of PNG --
 if that isn't possible, <b>pnmtopng</b> fails.  If the palette you
 specify doesn't contain exactly the colors in the image,
@@ -217,10 +225,10 @@ only reason you would specify the <b>-palette</b> option is if you care
 in what order the colors appear in the palette.  The PNG palette has colors
 in the same order as the palette you specify.
 
-<P>You specify the palette by naming a PPM file that has one pixel for
+<p>You specify the palette by naming a PPM file that has one pixel for
 each color in the palette.
 
-<P>Alternatively, consider the case that have a palette and you want
+<p>Alternatively, consider the case that have a palette and you want
 to make sure your PNG contains only colors from the palette,
 approximating if necessary.  You don't care what indexes the PNG uses
 internally for the colors (i.e. the order of the PNG palette).  In
@@ -229,9 +237,9 @@ image and your palette PPM through <b>pnmremap</b>.  Though you might
 think it would, using <b>-palette</b> in this case wouldn't even save
 <b>pnmtopng</b> any work.
 
-<DT><B>-gamma=</b><i>value</i>
+<dt><b>-gamma=</b><i>value</i>
 
-<DD>Causes <b>pnmtopng</b> to create a gAMA chunk.  This information helps
+<dd>Causes <b>pnmtopng</b> to create a gAMA chunk.  This information helps
 describe how the color values in the PNG must be interpreted.  Without
 the gAMA chunk, whatever interprets the PNG must get this information
 separately (or just assume something standard).  If your input is a true
@@ -243,14 +251,14 @@ have digital computational ability.  Also, some simple programs that generate
 images from scratch do it with a gamma transfer in which the gamma value is
 1.0.
 
-<DT><B>-hist</B>
+<dt><b>-hist</b>
 
-<DD>Use this parameter to create a chunk that specifies the frequency
+<dd>Use this parameter to create a chunk that specifies the frequency
 (or histogram) of the colors in the image.
 
-<DT><B>-text=</b><i>filename</i>
+<dt><b>-text=</b><i>filename</i>
 
-<DD>
+<dd>
 This option lets you include arbitrary text strings in the PNG output, as tEXt
 chunks.
 
@@ -286,9 +294,9 @@ delimiter characters after it, plus the text in subsequent continuation lines.
 <p>There is no limit on the length of a file line or entry or key or text
 string.  There is no limit on the number of entries.
 
-<DT><B>-ztxt=</b><i>filename</i>
+<dt><b>-ztxt=</b><i>filename</i>
 
-<DD>The same as <b>-text</b>, except the text string is compressed in the PNG
+<dd>The same as <b>-text</b>, except the text string is compressed in the PNG
 output.  <b>pnmtopng</b> uses zTXt chunks instead of a tEXt chunks, unless the
 key for the text string starts with &quot;A&quot; or &quot;T&quot;.  This
 odd exception exists for backward compatibility; we don't know why the program
@@ -296,9 +304,9 @@ was originally designed this way, except that the distinction was meant to
 roughly identify the keys &quot;Author&quot; and &quot;Title&quot;.
 
 
-<DT><B>-rgb=</b><i>chroma_list</i>
+<dt><b>-rgb=</b><i>chroma_list</i>
 
-<DD>This option specifies how red, green, and blue component values
+<dd>This option specifies how red, green, and blue component values
 of a pixel specify a particular color, by telling the chromaticities
 of those 3 primary illuminants and of white (i.e. full strength of
 all three).
@@ -317,9 +325,9 @@ arguments.
 the option <b>-chroma</b> does the same thing, but with slightly
 different syntax.
 
-<DT><B>-size="</b><i>x</i> <i>y</i> <i>unit</i><b>"</b>
+<dt><b>-size="</b><i>x</i> <i>y</i> <i>unit</i><b>"</b>
 
-<DD>This option determines the aspect ratio of the individual pixels
+<dd>This option determines the aspect ratio of the individual pixels
 of your image as well as the physical resolution of it.
 
 <p><i>unit</i> is either <b>0</b> or <i>1</i>.  When it is <i>1</i>,
@@ -363,9 +371,9 @@ more information on what this really means.
 <p>This option was new in Netpbm 10.71 (June 2015).  Before that,
 <b>pnmtopng</b> never generates an sRGB chunk.
 
-<DT><B>-modtime="</b>[<i>yy</i>]<i>yy-mm-dd hh:mm:ss</i><b>"</b> 
+<dt><b>-modtime="</b>[<i>yy</i>]<i>yy-mm-dd hh:mm:ss</i><b>"</b> 
 
-<DD>This option allows you to specify the modification time value to
+<dd>This option allows you to specify the modification time value to
 be placed in the PNG output.  You can specify the year parameter
 either as a two digit or four digit value.
 
@@ -373,9 +381,9 @@ either as a two digit or four digit value.
 the option <b>-time</b> does the same thing, but with slightly
 different syntax.
 
-<DT><B>-filter=</b><i>n</i>
+<dt><b>-filter=</b><i>n</i>
 
-<DD>This option is obsolete.  Before Netpbm 10.22 (April 2004), this was
+<dd>This option is obsolete.  Before Netpbm 10.22 (April 2004), this was
 the only way to specify a row filter.  It specifies a single type of
 row filter, by number, that <b>pnmtopng</b> must use on each row.
 
@@ -399,9 +407,9 @@ you could use the <b>-filter</b> option to specify one permitted row
 filter type.  The default, when you specify no filter options, was the
 same.
 
-<DT><B>-compression=</b><i>n</i>
+<dt><b>-compression=</b><i>n</i>
 
-<DD>This option sets set the compression level of the zlib
+<dd>This option sets set the compression level of the zlib
 compression.  Select a level from 0 for no compression (maximum speed)
 to 9 for maximum compression (minimum speed).
 
@@ -437,7 +445,7 @@ library knows only one method today, so there's nothing to choose.
 
 <p>This option was new in Netpbm 10.30 (October 2005).
 
-<dt><b>-comp_window_bits=</b><I>N</I>
+<dt><b>-comp_window_bits=</b><i>N</i>
 
 <dd>This option tells how big a window the zlib compression algorithm
 uses.  The value is the base 2 logarithm of the window size in bytes,
@@ -450,7 +458,7 @@ to 32K).
 
 <p>This option was new in Netpbm 10.30 (October 2005).
 
-<dt><b>-comp_buffer_size</b>=<I>N</I>
+<dt><b>-comp_buffer_size</b>=<i>N</i>
 
 <dd>This option determines in what size pieces <b>pnmtopng</b> does the
 zlib compression.  One compressed piece goes in each IDAT chunk in the
@@ -466,9 +474,9 @@ compression buffer) in bytes.
 <p>This option was new in Netpbm 10.30 (October 2005).
 
 
-<DT><B>-force</B>
+<dt><b>-force</b>
 
-<DD>
+<dd>
 When you specify this, <b>pnmtopng</b> limits its optimizations.  The
 resulting PNG output is as similar to the Netpbm input as possible.  For
 example, the PNG output will not be paletted and the transparency channel will
@@ -476,9 +484,9 @@ be represented as a full transparency channel even if the information could be
 represented more succinctly with a transparency chunk.
 
 
-<DT><B>-libversion</B>
+<dt><b>-libversion</b>
 
-<DD>
+<dd>
 This option causes <b>pnmtopng</b> to display version information
 about itself and the libraries it uses, <strong>in addition to all its
 normal function</strong>.  Do not confuse this with the Netpbm common
@@ -490,31 +498,35 @@ information about the Netpbm library and do nothing else.
 has changed too much over the history of <b>pnmtopng</b>.  The option
 is good only for human eyes.
 
-</DL>
+</dl>
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="pngtopam.html">pngtopam</A>, 
-<A HREF="pamtopng.html">pamtopng</A>,
-<A HREF="pnmremap.html">pnmremap</A>,
-<A HREF="pnmgamma.html">pnmgamma</A>, 
-<A HREF="pnm.html">pnm</A>
+<a href="pngtopam.html">pngtopam</a>, 
+<a href="pamtopng.html">pamtopng</a>,
+<a href="pnmremap.html">pnmremap</a>,
+<a href="pnmgamma.html">pnmgamma</a>, 
+<a href="pnm.html">pnm</a>
 
 <p>For information on the PNG format, see <a
 href="http://schaik.com/png">http://schaik.com/png</a>.
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 1995-1997 by Alexander Lehmann and Willem van Schaik.
 
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+  <ul>
+  <li><a href="#notesyntax">Note: Option Syntax of Older Versions</a>
+  <li><a href="#curroptions">Current Options</a>
+  </ul>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/ppmquantall.html b/ppmquantall.html
index fc7fc209..1e0132d7 100644
--- a/ppmquantall.html
+++ b/ppmquantall.html
@@ -1,17 +1,16 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Ppmquantall User Manual</TITLE></HEAD>
-<BODY>
-<H1>ppmquantall</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Ppmquantall User Manual</title></head>
+<body>
+<h1>ppmquantall</h1>
 Updated: 05 March 2012
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
-<B>ppmquantall</B> - replaced by pnmquantall
+<b>ppmquantall</b> - replaced by pnmquantall
 
 
-<H2>DESCRIPTION</H2>
+<h2>DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -25,8 +24,5 @@ before the renaming.
 <p>For Netpbm before 10.58, where the program is still named
 <b>ppmquantall</b>, just use the <b>pnmquantall</b> manual.
 
-</BODY>
-</HTML>
-
-
-
+</body>
+</html>
diff --git a/ppmshadow.html b/ppmshadow.html
index 9683faef..170a783a 100644
--- a/ppmshadow.html
+++ b/ppmshadow.html
@@ -63,10 +63,7 @@ you don't specify <i>ppmfile</i>, the input is Standard Input.
 
 <h2 id="options">OPTIONS</h2>
 
-<p>In addition to the options common to all programs based on libnetpbm
-(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
-Common Options</a>), <b>ppmshadow</b> recognizes the following
-command line options:
+<b>ppmshadow</b> recognizes the following command line options:
 
 <dl compact>
 <dt><b>-b</b> <i>blur_size</i>
@@ -117,6 +114,9 @@ same as the horizontal offset (above), upward.
 
 </dl>
 
+<p><b>ppmshadow</b> does not recognize the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)  However, the <b>-version</b> option works.
 
 <h2 id="limitations">LIMITATIONS</h2>
 
diff --git a/ppmtoilbm.html b/ppmtoilbm.html
index ca06b813..b94c31a8 100644
--- a/ppmtoilbm.html
+++ b/ppmtoilbm.html
@@ -1,61 +1,61 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Ppmtoilbm User Manual</TITLE></HEAD>
-<BODY>
-<H1>ppmtoilbm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Ppmtoilbm User Manual</title></head>
+<body>
+<h1>ppmtoilbm</h1>
 Updated: 28 June 2015
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 ppmtoilbm - convert a PPM image into an ILBM file
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>ppmtoilbm</B>
+<b>ppmtoilbm</b>
 
-[<B>-maxplanes</B>|<B>-mp</B> <I>N</I>]
+[<b>-maxplanes</b>|<b>-mp</b> <i>N</i>]
 
-[<B>-fixplanes</B>|<B>-fp</B> <I>N</I>]
+[<b>-fixplanes</b>|<b>-fp</b> <i>N</i>]
 
-[<B>-ham6</B>|<B>-ham8</B>]
+[<b>-ham6</b>|<b>-ham8</b>]
 
-[{<B>-dcbits</B>|<B>-dcplanes</B>} <i>r</i> <i>g</i> <i>b</i>]
+[{<b>-dcbits</b>|<b>-dcplanes</b>} <i>r</i> <i>g</i> <i>b</i>]
 
 [
-<B>-normal</B>|<B>-hamif</B>|<B>-hamforce</B>|<B>-24if</B>|<B>-24force</B>|
-<b>-dcif</b>|<b>-dcforce</B>|<b>-cmaponly</B>
+<b>-normal</b>|<b>-hamif</b>|<b>-hamforce</b>|<b>-24if</b>|<b>-24force</b>|
+<b>-dcif</b>|<b>-dcforce</b>|<b>-cmaponly</b>
 ]
 
-[<B>-ecs</B>|<B>-aga</B>]
+[<b>-ecs</b>|<b>-aga</b>]
 
-[<B>-compress</B>|<B>-nocompress</B>]
+[<b>-compress</b>|<b>-nocompress</b>]
 
-[<B>-cmethod</B> <I>type</I>]
+[<b>-cmethod</b> <i>type</i>]
 
-[<B>-map</B> <i>ppmfile</i>]
+[<b>-map</b> <i>ppmfile</i>]
 
-[<B>ppmfile</B>]
+[<b>ppmfile</b>]
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
 <p><b>ppmtoilbm</b> reads a PPM image as input.  Produces an ILBM file
 as output.  <b>ppmtoilbm</b> understands the following ILBM types:
 
-<UL COMPACT>
+<ul compact>
 
-<LI>Normal ILBMs with 1-16 planes
+<li>Normal ILBMs with 1-16 planes
 
-<LI>Amiga HAM with 3-16 planes
+<li>Amiga HAM with 3-16 planes
 
-<LI>24 bit
+<li>24 bit
 
-<LI>Color map (BMHD + CMAP chunk only, nPlanes = 0)
+<li>Color map (BMHD + CMAP chunk only, nPlanes = 0)
 
-<LI>Unofficial direct color.  1-16 planes for each color component.
+<li>Unofficial direct color.  1-16 planes for each color component.
 
 </ul>
 
@@ -63,110 +63,115 @@ as output.  <b>ppmtoilbm</b> understands the following ILBM types:
 colormap files) unofficial DCOL chunk for direct color ILBM.
 
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
+
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>ppmtoilbm</b> recognizes the following
+command line options:
 
 <p>Options marked with (*) can be prefixed with a "no",
 e.g. "-nohamif".  All options can be abbreviated to their
 shortest unique prefix.
 
-<DL COMPACT>
-<DT><B>-maxplanes</b> | <b>-mp</b> <i>n</i>
+<dl compact>
+<dt><b>-maxplanes</b> | <b>-mp</b> <i>n</i>
 
-<DD>(default 5, minimum 1, maximum 16) Maximum planes to write in a
+<dd>(default 5, minimum 1, maximum 16) Maximum planes to write in a
 normal ILBM.  If the image does not fit into &lt;n&gt; planes,
 ppmtoilbm writes a HAM file (if -hamif is used), a 24bit file (if
 -24if is used) or a direct color file (if -dcif is used) or aborts
 with an error.
 
-<DT><B>-fixplanes</b> | <b>-fp</b> <i>b</i>
+<dt><b>-fixplanes</b> | <b>-fp</b> <i>b</i>
 
-<DD>(min 1, max 16) If a normal ILBM is written, it will have exactly
+<dd>(min 1, max 16) If a normal ILBM is written, it will have exactly
 &lt;n&gt; planes.
 
-<DT><B>-hambits</b> | <b>-hamplanes</b> <i>n</i>
+<dt><b>-hambits</b> | <b>-hamplanes</b> <i>n</i>
 
-<DD>(default 6, min 3, max 16) Select number of planes for HAM
-picture.  The current Amiga hardware supports 6 and 8 planes, so for
+<dd>(default 6, min 3, max 16) Select number of planes for HAM
+picture.  The current Amiga hardware understands 6 and 8 planes, so for
 now you should only use this values.
 
-<DT><B>-normal</B>
+<dt><b>-normal</b>
 
-<DD>Turns off -hamif/-24if/-dcif, -hamforce/-24force/-dcforce and
+<dd>Turns off -hamif/-24if/-dcif, -hamforce/-24force/-dcforce and
 -cmaponly.  Also sets compression type to byterun1.
 
 <p>This is the default.
 
-<DT><B>-hamif</B> (*)
-<DT><B>-24if</B> (*)
-<DT><B>-dcif</B> (*)
+<dt><b>-hamif</b> (*)
+<dt><b>-24if</b> (*)
+<dt><b>-dcif</b> (*)
 
-<DD>Write a HAM/24bit/direct color file if the image does not fit into
+<dd>Write a HAM/24bit/direct color file if the image does not fit into
 &lt;maxplanes&gt; planes.
 
-<DT><B>-hamforce</B> (*)
-<DT><B>-24force</B> (*)
-<DT><B>-dcforce</B> (*)
+<dt><b>-hamforce</b> (*)
+<dt><b>-24force</b> (*)
+<dt><b>-dcforce</b> (*)
 
-<DD>Write a HAM/24bit/direct color file.
+<dd>Write a HAM/24bit/direct color file.
 
-<DT><B>-dcbits</b> <i>r</i> <i>g</i> <i>b</i>
-<DT><b>-dcplanes</b> <i>r</i> <i>g</i> <i>b</i>
+<dt><b>-dcbits</b> <i>r</i> <i>g</i> <i>b</i>
+<dt><b>-dcplanes</b> <i>r</i> <i>g</i> <i>b</i>
 
-<DD>(default 5, min 1, max 16).  Select number of bits for red, green
+<dd>(default 5, min 1, max 16).  Select number of bits for red, green
 and blue in a direct color ILBM.
 
-<DT><B>-ecs</B>
+<dt><b>-ecs</b>
 
-<DD>Shortcut for: -hamplanes 6 -maxplanes 5
+<dd>Shortcut for: -hamplanes 6 -maxplanes 5
 
 <p>This is the default.
 
-<DT><B>-aga</B>
+<dt><b>-aga</b>
 
-<DD>Shortcut for: <b>-hamplanes 8 -maxplanes 8</B>
+<dd>Shortcut for: <b>-hamplanes 8 -maxplanes 8</b>
 
-<DT><B>-ham6</B>
+<dt><b>-ham6</b>
 
-<DD>Shortcut for: <b>-hamplanes 6 -hamforce</B>
+<dd>Shortcut for: <b>-hamplanes 6 -hamforce</b>
 
-<DT><B>-ham8</B>
+<dt><b>-ham8</b>
 
-<DD>Shortcut for: <b>-hamplanes 8 -hamforce</b>
+<dd>Shortcut for: <b>-hamplanes 8 -hamforce</b>
 
-<DT><B>-compress</B> (*)
+<dt><b>-compress</b> (*)
 
-<DD>This is the default.
+<dd>This is the default.
 
-<DD>Compress the BODY chunk.  The default compression method is
+<dd>Compress the BODY chunk.  The default compression method is
 byterun1.  Compression requires building the ILBM image in memory;
 turning compression off allows stream-writing of the image, but the
 resulting file will usually be 30% to 50% larger.  Another alternative
 is the -savemem option, this will keep memory requirements for
 compression at a minimum, but is very slow.
 
-<DT><B>-cmethod</b> <b>none</b>|<b>byterun1</B>
+<dt><b>-cmethod</b> <b>none</b>|<b>byterun1</b>
 
-<DD>This option does the same thing as <b>-compress</b>.
+<dd>This option does the same thing as <b>-compress</b>.
 
-<DT><B>-map</b> <i>ppmfile</i>
+<dt><b>-map</b> <i>ppmfile</i>
 
-<DD>Write a normal ILBM using the colors in &lt;ppmfile&gt; as the
+<dd>Write a normal ILBM using the colors in &lt;ppmfile&gt; as the
 colormap.  The colormap file also determines the number of planes, a
 <b>-maxplanes</b> or <b>-fixplanes</b> option is ignored.
 
-<DT><B>-cmaponly</B>
+<dt><b>-cmaponly</b>
 
-<DD>Write a colormap file: only BMHD and CMAP chunks, no BODY chunk,
+<dd>Write a colormap file: only BMHD and CMAP chunks, no BODY chunk,
 nPlanes = 0.
 
-<DT><B>-savemem</B>
+<dt><b>-savemem</b>
 
-<DD>See the <b>-compress</b> option.
+<dd>See the <b>-compress</b> option.
 
-</DL>
+</dl>
 
 
-<H2 id="limitations">LIMITATIONS</H2>
+<h2 id="limitations">LIMITATIONS</h2>
 
 <p>HAM pictures will always get a grayscale colormap; a real color
 selection algorithm might give better results.  On the other hand,
@@ -175,17 +180,17 @@ the same depth (no. of planes) share a common colormap, which is
 useful for building HAM animations.
 
 
-<H2 id="references">REFERENCES</H2>
+<h2 id="references">REFERENCES</h2>
 
 Amiga ROM Kernel Reference Manual - Devices (3rd Ed.)
-<BR>
+<br>
 Addison Wesley, ISBN 0-201-56775-X
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<A HREF="ppm.html">ppm</A>, 
-<A HREF="ilbmtoppm.html">ilbmtoppm</A>
+<a href="ppm.html">ppm</a>, 
+<a href="ilbmtoppm.html">ilbmtoppm</a>
 
 
 <h2 id="history">HISTORY</h2>
@@ -193,25 +198,25 @@ Addison Wesley, ISBN 0-201-56775-X
 <p>For about a year in 1993-1994, there was a <b>-savemem</b> option.
 
 
-<H2 id="authoris">AUTHORS</H2>
+<h2 id="authors">AUTHORS</h2>
 
 <p>Copyright (C) 1989 by Jef Poskanzer.
 
-<p>Modified October 1993 by Ingo Wilken (<A
-HREF="mailto:Ingo.Wilken@informatik.uni-oldenburg.de">Ingo.Wilken@informatik.uni-oldenburg.de</A>)
-
-
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#limitations">LIMITATIONS</A>
-<LI><A HREF="#references">REFERENCES</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#history">HISTORY</A>
-<LI><A HREF="#authors">AUTHORS</A>
-</UL>
-</BODY>
-</HTML>
+<p>Modified October 1993 by Ingo Wilken (<a
+href="mailto:Ingo.Wilken@informatik.uni-oldenburg.de">Ingo.Wilken@informatik.uni-oldenburg.de</a>)
+
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#limitations">LIMITATIONS</a>
+<li><a href="#references">REFERENCES</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#history">HISTORY</a>
+<li><a href="#authors">AUTHORS</a>
+</ul>
+</body>
+</html>
diff --git a/ppmtomitsu.html b/ppmtomitsu.html
index bb65f1f1..e03d14a8 100644
--- a/ppmtomitsu.html
+++ b/ppmtomitsu.html
@@ -36,7 +36,7 @@ ppmtomitsu - convert a PPM image to a Mitsubishi S340-10 file
 format suitable to be printed by a Mitsubishi S340-10 printer, or any
 other Mitsubishi color sublimation printer.
 
-<p>The Mitsubishi S340-10 Color Sublimation printer supports 24bit
+<p>The Mitsubishi S340-10 Color Sublimation printer can print in 24 bit
 color.  Images of the available sizes take so long to transfer that
 there is a fast method, employing a lookuptable, that ppmtomitsu will
 use if there is a maximum of 256 colors in the image.  ppmtomitsu
@@ -50,8 +50,8 @@ printer.  The printer understands putting together images in the
 printers memory; ppmtomitsu doesn't utilize this as pnmcat etc provide
 the same functionality and let you view the result on-screen, too.
 The S340-10 is the lowest common denominator printer; for higher
-resolution printers there's the dpi300 option. The other printers also
-support higher values for enlarge eg, but I don't think that's
+resolution printers there's the dpi300 option. The other printers are also
+capable of higher values for enlarge eg, but I don't think that's
 essential enough to warrant a change in the program.
 
 <p>For proper results, the input maxval must be 255.  Use <b>pamdepth</b>
diff --git a/ppmtoterm.html b/ppmtoterm.html
index 23ac56c0..e25f73d0 100644
--- a/ppmtoterm.html
+++ b/ppmtoterm.html
@@ -1,30 +1,30 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Ppmtoterm User Manual</TITLE></HEAD>
-<BODY>
-<H1>ppmtoterm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Ppmtoterm User Manual</title></head>
+<body>
+<h1>ppmtoterm</h1>
 Updated: 17 June 2017
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 ppmtoterm - convert a PPM image to a ANSI ISO 6429 ascii image
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>ppmtoterm</B>
+<b>ppmtoterm</b>
 
-[<I>ppmfile</I>]
+[<i>ppmfile</i>]
 
-<P>All options can be abbreviated to their shortest unique prefix.
+<p>All options can be abbreviated to their shortest unique prefix.
 You may use two hyphens instead of one.  You may separate an option
 name and its value with white space instead of an equals sign.
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>. 
 
-<P>This program tries to produce an accurate representation of a PPM
+<p>This program tries to produce an accurate representation of a PPM
 image on an terminal that implements the ANSI ISO 6429 standard.  It
 approximates colors, finding the minimum Cartesian distance between the
 input RGB vectors and the ones in the generated palette.  As the
@@ -32,11 +32,11 @@ available color palette is somewhat restricted, you get the best
 results when the colors in the original image are few and the RGB
 intensities are close to zero, half of maximum, and maximum.
 
-<P>You can usually get good results with cartoons or images with
+<p>You can usually get good results with cartoons or images with
 plain colors (no gradients).  With photos, results can vary, but are
 usually not very accurate.
 
-<P>The output image has one line for each row and one character for each
+<p>The output image has one line for each row and one character for each
 column of the input image.  E.g. an 80 pixel by 25 pixel PPM image would
 fill up an 80x25 terminal screen.  Use <b>pamscale</b> or <b>pamcut</b>
 to make your image fit properly on your screen.
@@ -48,12 +48,12 @@ appear square on your terminal, as it should, you'll want to squash it
 vertically or stretch it horizontally by a factor of two (resulting int 10x20
 characters are 20x40 characters).
 
-<P>The image starts at the current cursor position on the terminal
+<p>The image starts at the current cursor position on the terminal
 screen.  Each successive row starts at Column 0 on the screen.  If you want
 to shift the image up or down, for example to center it, use
 <b>pnmpad</b> on the input.
 
-<P>This program was born with the objective of displaying nice color
+<p>This program was born with the objective of displaying nice color
 images on the Linux console, e.g. a proper logo at Linux boot.
 
 <p><b>ppmtoascii</b> does a similar things, but combines 2 or 8 pixels into
@@ -64,41 +64,42 @@ pixel.
 <p><b>pbmto4425</b> does a similar thing for black and white images, using
 line drawing characters, on some terminals.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>
-None.
+<p>There are no command line options defined specifically
+for <b>ppmtoterm</b>, but it recognizes the options common to all
+programs based on libnetpbm (See <a href="index.html#commonoptions">
+Common Options</a>.)
 
+<h2 id="seealso">SEE ALSO</h2>
 
-<H2 id="seealso">SEE ALSO</H2>
+<b><a href="pamscale.html">pamscale</a></b>,
+<b><a href="pamcut.html">pamcut</a></b>,
+<b><a href="ppmtoascii.html">ppmtoascii</a></b>,
+<b><a href="pbmtoascii.html">pbmtoascii</a></b>,
+<b><a href="pbmto4425.html">pbmto4425</a></b>,
+<b><a href="ppm.html">ppm</a></b>
 
-<B><A HREF="pamscale.html">pamscale</A></B>,
-<B><A HREF="pamcut.html">pamcut</a></b>,
-<B><A HREF="ppmtoascii.html">ppmtoascii</a></b>,
-<B><A HREF="pbmtoascii.html">pbmtoascii</a></b>,
-<B><A HREF="pbmto4425.html">pbmto4425</a></b>,
-<B><A HREF="ppm.html">ppm</A></B>
 
-
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 Copyright (C) 2002 by Ero Carrera.
 
 
-<h2 id="history">HISTORY</H2>
-
-<P>This program was new in Netpbm 10.9 (August 2002).
+<h2 id="history">HISTORY</h2>
 
+<p>This program was new in Netpbm 10.9 (August 2002).
 
-<HR>
-<H2 id="contents">Table Of Contents</H2>
-<UL>
-<LI><A HREF="#synopsis">SYNOPSIS</A>
-<LI><A HREF="#description">DESCRIPTION</A>
-<LI><A HREF="#options">OPTIONS</A>
-<LI><A HREF="#seealso">SEE ALSO</A>
-<LI><A HREF="#author">AUTHOR</A>
-</UL>
-</BODY>
-</HTML>
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+<li><a href="#history">HISTORY</a>
+</ul>
+</body>
+</html>
 
diff --git a/rletopnm.html b/rletopnm.html
index 93a4d267..8a912be9 100644
--- a/rletopnm.html
+++ b/rletopnm.html
@@ -132,7 +132,7 @@ Army High Performance Computing Research Center (AHPCRC)
 
 Minnesota Supercomputer Center, Inc.
 
-<p>Modifications by Eric Haines to support raw and plain formats.
+<p>Modifications by Eric Haines to produce raw and plain formats.
 
 <p>Modifications by Bryan Henderson to create transparency files and use
 mnemonic options.
diff --git a/tifftopnm.html b/tifftopnm.html
index c0526212..af540dfc 100644
--- a/tifftopnm.html
+++ b/tifftopnm.html
@@ -1,30 +1,30 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
-<HTML><HEAD><TITLE>Tifftopnm User Manual</TITLE></HEAD>
-<BODY>
-<H1>tifftopnm</H1>
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.3//EN">
+<html><head><title>Tifftopnm User Manual</title></head>
+<body>
+<h1>tifftopnm</h1>
 Updated: 02 January 2015
-<BR>
-<A HREF="#index">Table Of Contents</A>
+<br>
+<a href="#index">Table Of Contents</a>
 
-<H2>NAME</H2>
+<h2>NAME</h2>
 
 tifftopnm - convert a TIFF file into a PNM image
 
-<H2 id="synopsis">SYNOPSIS</H2>
+<h2 id="synopsis">SYNOPSIS</h2>
 
-<B>tifftopnm</B>
+<b>tifftopnm</b>
 
-[<B>-alphaout=</B>{<I>alpha-filename</I>,<B>-</B>}]
-[<B>-headerdump</B>]
+[<b>-alphaout=</b>{<i>alpha-filename</i>,<b>-</b>}]
+[<b>-headerdump</b>]
 [<b>-verbose</b>]
 <br>
-[<B>-respectfillorder</B>]
-[<B>-byrow</B>]
-[<B>-orientraw</B>]
-[<I>tiff-filename</I>]
+[<b>-respectfillorder</b>]
+[<b>-byrow</b>]
+[<b>-orientraw</b>]
+[<i>tiff-filename</i>]
 
 
-<H2 id="description">DESCRIPTION</H2>
+<h2 id="description">DESCRIPTION</h2>
 
 <p>This program is part of <a href="index.html">Netpbm</a>.
 
@@ -39,9 +39,9 @@ which type it is writing.
 output stream.  Before Netpbm 10.27 (March 2005), however, it would
 just ignore all but the first input image.
 
-<P>The <I>tiff-filename</I> argument names the file that contains the Tiff
+<p>The <i>tiff-filename</i> argument names the file that contains the Tiff
 image.  If you specify "-" or don't specify this
-argument, <B>tifftopnm</B> uses Standard Input.
+argument, <b>tifftopnm</b> uses Standard Input.
 
 <p>In either case, before Netpbm 10.70 (March 2015), the file must be
 seekable.  That means no pipe, but any regular file is fine.  In current
@@ -49,14 +49,13 @@ Netpbm, the file need not be seekable, but if it isn't, <b>tifftopnm</b>
 creates a temporary regular file containing the entire image, so you must have
 resources for that (and it may defeat your reason for using a pipe).
 
-
 <h3 id="library">TIFF Capability</h3>
 
 <p><b>pamtotiff</b> uses the Libtiff.org TIFF library (or whatever
 equivalent you provide) to interpret the TIFF input.  So the set of files
 it is able to interpret is determined mostly by that library.
 
-<P>This program cannot read every possible TIFF file -- there are
+<p>This program cannot read every possible TIFF file -- there are
 myriad variations of the TIFF format.  However, it does understand
 monochrome and gray scale, RGB, RGBA (red/green/blue with transparency
 channel), CMYK (Cyan-Magenta-Yellow-Black ink color separation), and
@@ -77,91 +76,96 @@ intelligence.  That native intelligence does not know as many formats
 as TIFFRGBAImageGet() does.  And certain compressed formats simply
 cannot be read with TIFFReadScanLine().
 
-<P>Before Netpbm 10.11 (October 2002), <B>tifftopnm</b> never used
+<p>Before Netpbm 10.11 (October 2002), <b>tifftopnm</b> never used
 TIFFRGBAImageGet(), so it could not interpret many of the formats it
 can interpret today.
 
-<P>There is no fundamental reason that this program could not read
+<p>There is no fundamental reason that this program could not read
 other kinds of TIFF files even when they don't fit in memory all at
 once.  The existing limitations are mainly because no one has asked
 for more.
 
 <h3 id="output">Output Image</h3>
 
-<P>The PNM output has the same maxval as the Tiff input, except that
+<p>The PNM output has the same maxval as the Tiff input, except that
 if the Tiff input is colormapped (which implies a maxval of 65535) the
 PNM output has a maxval of 255.  Though this may result in lost
 information, such input images hardly ever actually have more color
 resolution than a maxval of 255 provides and people often cannot deal
 with PNM files that have maxval &gt; 255.  By contrast, a
 non-colormapped Tiff image that doesn't need a maxval &gt; 255 doesn't
-<EM>have</EM> a maxval &gt; 255, so when <b>tifftopnm</b> sees a
+<em>have</em> a maxval &gt; 255, so when <b>tifftopnm</b> sees a
 non-colormapped maxval &gt; 255, it takes it seriously and produces a
 matching output maxval.
 
-<P>Another exception is where the TIFF maxval is greater than 65535,
+<p>Another exception is where the TIFF maxval is greater than 65535,
 which is the maximum allowed by the Netpbm formats.  In that case,
 <b>tifftopnm</b> uses a maxval of 65535, and you lose some information
 in the conversion.
 
-<H2 id="options">OPTIONS</H2>
+<h2 id="options">OPTIONS</h2>
 
-<P>You may abbreviate any option to its shortest unique prefix.  You may use
+<p>In addition to the options common to all programs based on libnetpbm
+(most notably <b>-quiet</b>, see <a href="index.html#commonoptions">
+Common Options</a>), <b>tifftopnm</b> recognizes the following
+command line options:
+
+<p>You may abbreviate any option to its shortest unique prefix.  You may use
 two hyphens instead of one in options.  You may separate an option and
 its value either by an equals sign or white space.
 
-<DL COMPACT>
-<DT><B>-alphaout=</B><I>alpha-filename</I>
+<dl compact>
+<dt><b>-alphaout=</b><i>alpha-filename</i>
 
-<DD><B>tifftopnm </B>creates a PGM file containing the alpha channel
+<dd><b>tifftopnm </b>creates a PGM file containing the alpha channel
 values in the input image.  If the input image doesn't contain a
-transparency channel, the <I>alpha-filename</I> file contains all zero
-(transparent) transparency values.  If you don't specify <B>-alphaout</B>,
+transparency channel, the <i>alpha-filename</i> file contains all zero
+(transparent) transparency values.  If you don't specify <b>-alphaout</b>,
 
-<B>tifftopnm</B> does not generate a transparency file, and if the input
-image has an transparency channel, <B>tifftopnm</B> simply discards it.
+<b>tifftopnm</b> does not generate a transparency file, and if the input
+image has an transparency channel, <b>tifftopnm</b> simply discards it.
 
-<P>If you specify <B>-</B> as the filename, <B>tifftopnm</B>
+<p>If you specify <b>-</b> as the filename, <b>tifftopnm</b>
 writes the transparency output to Standard Output and discards the image.
 
-<P>See <B><A HREF="pamcomp.html">pamcomp</A></B> for one way to use
+<p>See <b><a href="pamcomp.html">pamcomp</a></b> for one way to use
 the transparency output file.
 
-<DT><B>-respectfillorder</B>
+<dt><b>-respectfillorder</b>
 
-<DD>By default, <B>tifftopnm </B> ignores the "fillorder"
+<dd>By default, <b>tifftopnm </b> ignores the "fillorder"
 tag in the TIFF input, which means it may incorrectly interpret the
 image.  To make it follow the spec, use this option.  For a lengthy
-but engaging discussion of why <B>tifftopnm</B> works this way and how
-to use the <B>-respectfillorder</B> option, see the note on fillorder
+but engaging discussion of why <b>tifftopnm</b> works this way and how
+to use the <b>-respectfillorder</b> option, see the note on fillorder
 below.  
 
-<DT><B>-byrow</B>
+<dt><b>-byrow</b>
 
-<DD>This option can make <b>tifftopnm</b> run faster.
+<dd>This option can make <b>tifftopnm</b> run faster.
 
-<P><B>tifftopnm</B> has two ways to do the conversion from Tiff to PNM, using
+<p><b>tifftopnm</b> has two ways to do the conversion from Tiff to PNM, using
 respectively two facilities of the TIFF library:
 
-<DL>
+<dl>
 
-<DT>Whole Image
+<dt>Whole Image
 
-<DD>Decode the entire image into memory at once, using
+<dd>Decode the entire image into memory at once, using
 <b>TIFFRGBAImageGet()</b>, then convert to PNM and output row by row.
    
-<DT>Row By Row
-<DD>Read, convert, and output one row at a time
+<dt>Row By Row
+<dd>Read, convert, and output one row at a time
 using <b>TIFFReadScanline()</b>
 
-</DL>
+</dl>
 
-<P>Whole Image is preferable because the Tiff library does more of the
+<p>Whole Image is preferable because the Tiff library does more of the
 work, which means it understands more of the Tiff format possibilities
 now and in the future.  Also, some compressed TIFF formats don't allow
 you to extract an individual row.
 
-<P>Row By Row uses far less memory, which means with large images, it
+<p>Row By Row uses far less memory, which means with large images, it
 can run in environments where Whole Image cannot and may also run
 faster.  And because Netpbm code does more of the work, it's possible
 that it can be more flexible or at least give better diagnostic
@@ -170,13 +174,13 @@ information if there's something wrong with the TIFF.
 <p>The Netpbm native code may do something correctly that the TIFF
 library does incorrectly, or vice versa.
 
-<P>In Netpbm, we stress function over performance, so by default we
+<p>In Netpbm, we stress function over performance, so by default we
 try Whole Image first, and if we can't get enough memory for the
 decoded image or <b>TIFFRGBAImageGet()</b> fails, we fall back to Row By Row.
 But if you specify the <b>-byrow</b> option, <b>tifftopnm</b> will not
 attempt Whole Image.  If Row By Row does not work, it simply fails.
 
-<P>See <a href="#cmyk">Color Separation (CMYK) TIFFs</a> for a
+<p>See <a href="#cmyk">Color Separation (CMYK) TIFFs</a> for a
 description of one way Row By Row makes a significant difference in
 your results.
 
@@ -185,13 +189,13 @@ your results.
 <b>tifftopnm</b> then scales them back to maxval 65535, but the lower
 8 bits of information is gone.
 
-<p>In many versions of the TIFF library, <B>TIFFRGBAImageGet()</B> does not
+<p>In many versions of the TIFF library, <b>TIFFRGBAImageGet()</b> does not
 correctly interpret TIFF files in which the raster orientation is
 column-major (i.e. a row of the raster is a column of the image).
 With such a TIFF library and file, you must use <b>-byrow</b> to get
 correct output.
 
-<P>Before Netpbm 10.11 (October 2002), <B>tifftopnm</b> always did Row
+<p>Before Netpbm 10.11 (October 2002), <b>tifftopnm</b> always did Row
 By Row.  Netpbm 10.12 always tried Whole Image first.  <b>-byrow</b>
 came in with Netpbm 10.13 (January 2003).
 
@@ -230,18 +234,18 @@ that have an orientation other than the common one.
 
 <dd>Print extra messages to Standard Error about the conversion.
 
-<DT><B>-headerdump</B>
+<dt><b>-headerdump</b>
 
-<DD>Dump TIFF file information to stderr.  This information may be useful 
+<dd>Dump TIFF file information to stderr.  This information may be useful 
 in debugging TIFF file conversion problems.  
 
-</DL>
+</dl>
 
-<H2 id="notes">NOTES</H2>
+<h2 id="notes">NOTES</h2>
 
-<H3 id="fillorder">Fillorder</H3>
+<h3 id="fillorder">Fillorder</h3>
 
-<P>
+<p>
 There is a piece of information in the header of a TIFF image called
 "fillorder." The TIFF specification quite clearly states
 that this value tells the order in which bits are arranged in a byte
@@ -250,42 +254,42 @@ assuming that the image has a format where more than one pixel can be
 represented by a single byte: 1) the byte is filled from most
 significant bit to least significant bit going left to right in the
 image; and 2) the opposite.
-<P>
+<p>
 However, there is confusion in the world as to the meaning of
 fillorder.  Evidence shows that some people believe it has to do with
 byte order when a single value is represented by two bytes.
-<P>
+<p>
 These people cause TIFF images to be created that, while they use a 
 MSB-to-LSB fillorder, have a fillorder tag that says they used LSB-to-MSB.
 A program that properly interprets a TIFF image will not end up with the
 image that the author intended in this case.
-<P>
-For a long time, <B>tifftopnm</B> did not understand fillorder itself
+<p>
+For a long time, <b>tifftopnm</b> did not understand fillorder itself
 and assumed the fillorder was MSB-to-LSB regardless of the fillorder
 tag in the TIFF header.  And as far as I know, there is no legitimate
 reason to use a fillorder other than MSB-to-LSB.  So users of
-<B>tifftopnm</B> were happily using those TIFF images that had
+<b>tifftopnm</b> were happily using those TIFF images that had
 incorrect fillorder tags.
-<P>
-So that those users can continue to be happy, <B>tifftopnm</B> today
+<p>
+So that those users can continue to be happy, <b>tifftopnm</b> today
 continues to ignore the fillorder tag unless you tell it not to.  (It
 does, however, warn you when the fillorder tag does not say MSB-to-LSB
 that the tag is being ignored).
-<P>
+<p>
 If for some reason you have a TIFF image that actually has LSB-to-MSB
 fillorder, and its fillorder tag correctly indicates that, you must
-use the <B>-respectfillorder</B> option on <B>tifftopnm</B> to get
+use the <b>-respectfillorder</b> option on <b>tifftopnm</b> to get
 proper results.
-<P>
-Examples of incorrect TIFF images are at <A
-HREF="ftp://weather.noaa.gov.">ftp://weather.noaa.gov.</A> They are
-apparently created by a program called <B>faxtotiff</B>.
+<p>
+Examples of incorrect TIFF images are at <a
+href="ftp://weather.noaa.gov.">ftp://weather.noaa.gov.</a> They are
+apparently created by a program called <b>faxtotiff</b>.
 
-<P>
+<p>
 This note was written on January 1, 2002.
 
 
-<h3 id="cmyk">Color Separation (CMYK) TIFFs</H3>
+<h3 id="cmyk">Color Separation (CMYK) TIFFs</h3>
 
 <p>Some TIFF images contain color information in CMYK form, whereas PNM
 images use RGB.  There are various formulas for converting between these
@@ -307,36 +311,36 @@ Row By Row mode.
 Y=(1-K)*(1-B) formula always.
 
 
-<H2 id="seealso">SEE ALSO</H2>
+<h2 id="seealso">SEE ALSO</h2>
 
-<B><A HREF="pnmtotiff.html">pnmtotiff</A></B>,
-<B><A HREF="pnmtotiffcmyk.html">pnmtotiffcmyk</A></B>,
-<B><A HREF="pamcomp.html">pamcomp</A></B>,
-<B><A HREF="pnm.html">pnm</A></B>
+<b><a href="pnmtotiff.html">pnmtotiff</a></b>,
+<b><a href="pnmtotiffcmyk.html">pnmtotiffcmyk</a></b>,
+<b><a href="pamcomp.html">pamcomp</a></b>,
+<b><a href="pnm.html">pnm</a></b>
 
-<H2 id="author">AUTHOR</H2>
+<h2 id="author">AUTHOR</h2>
 
 <p>Derived by Jef Poskanzer from tif2ras.c, which is Copyright (c)
-1990 by Sun Microsystems, Inc.  Author: Patrick J. Naughton (<A
-HREF="mailto:naughton@wind.sun.com">naughton@wind.sun.com</A>).
-
-<HR>
-<H2 id="index">Table Of Contents</H2>
-<UL>
-  <LI><A HREF="#synopsis">SYNOPSIS</A>
-  <LI><A HREF="#description">DESCRIPTION</A>
+1990 by Sun Microsystems, Inc.  Author: Patrick J. Naughton (<a
+href="mailto:naughton@wind.sun.com">naughton@wind.sun.com</a>).
+
+<hr>
+<h2 id="index">Table Of Contents</h2>
+<ul>
+<li><a href="#synopsis">SYNOPSIS</a>
+<li><a href="#description">DESCRIPTION</a>
+  <ul>
+  <li><a href="#library">TIFF Capability</a>
+  <li><a href="#output">Output Image</a>
+  </ul>
+<li><a href="#options">OPTIONS</a>
+<li><a href="#notes">NOTES</a>
   <ul>
-    <LI><A HREF="#library">Tiff Capability</A>
-    <LI><A HREF="#output">Output Image</A>
-    </ul>
-  <LI><A HREF="#options">OPTIONS</A>
-  <LI><A HREF="#notes">NOTES</A>
-    <UL>
-      <LI><A HREF="#fillorder">Fillorder</A>
-      <LI><A HREF="#cmyk">Color Separation (CMYK) TIFFs</A>
-      </UL>
-  <LI><A HREF="#seealso">SEE ALSO</A>
-  <LI><A HREF="#author">AUTHOR</A>
-  </UL>
-</BODY>
-</HTML>
+  <li><a href="#fillorder">Fillorder</a>
+  <li><a href="#cmyk">Color Separation (CMYK) TIFFs</a>
+  </ul>
+<li><a href="#seealso">SEE ALSO</a>
+<li><a href="#author">AUTHOR</a>
+</ul>
+</body>
+</html>
diff --git a/winicon.html b/winicon.html
index 81748bf9..71c83b4d 100644
--- a/winicon.html
+++ b/winicon.html
@@ -73,11 +73,11 @@ invented in the mid-eighties for Windows&nbsp;1:
 <UL>
 <LI>Windows&nbsp;1 used monochrome 32x32 icons only.
 <LI>Windows&nbsp;3.0 added color icons with bpp values up to 8.
-<LI>Windows 4.0 (a.k.a. Windows95) added support for 32-bpp images and
+<LI>Windows 4.0 (a.k.a. Windows95) added option for 32-bpp images and
 resolutions up to 256 by 256.
-<LI>NT&nbsp;5.1 (a.k.a. Windows&nbsp;XP) added support for the 8-bit
+<LI>NT&nbsp;5.1 (a.k.a. Windows&nbsp;XP) added option for the 8-bit
 transparency channel in the unused bits of 32-bpp images.
-<LI>NT&nbsp;6.0 (a.k.a. Windows&nbsp;Vista) added support for PNG
+<LI>NT&nbsp;6.0 (a.k.a. Windows&nbsp;Vista) added option for PNG
 encoded images
 </UL>