grohtml(1)                                           General Commands Manual                                           grohtml(1)

Name
       grohtml, post-grohtml, pre-grohtml - groff output driver for HTML

Synopsis
       pre-grohtml [-epV] [-a anti-aliasing-text-bits] [-D image-directory] [-F font-directory] [-g anti-aliasing-graphic-bits]
                   [-i resolution] [-I image-stem] [-o image-vertical-offset] [-x html-dialect] troff-command troff-argument ...

       pre-grohtml --help

       pre-grohtml -v
       pre-grohtml --version

       post-grohtml [-bCGhlnrVy] [-F font-directory] [-j output-stem] [-s base-point-size] [-S heading-level] [-x html-dialect]
                    [file ...]

       post-grohtml --help

       post-grohtml -v
       post-grohtml --version

Description
       The  GNU roff system's HTML support consists of a preprocessor, pre-grohtml, and an output driver, post-grohtml; together,
       they translate roff(7) documents to HTML.  Because a preprocessor is (uniquely) required for  this  output  driver,  users
       should  invoke  grohtml via the groff(1) command with the -Thtml or -Txhtml options.  (In this installation, ps is the de‐
       fault output device.)  Use groff's -P option to pass any options shown above to grohtml.  If no operands are given, or  if
       file is “-”, grohtml reads the standard input stream.  Output is written to the standard output stream.

       grohtml  invokes  groff twice.  In the first pass, the preprocessor pre-grohtml renders pictures, equations, and tables as
       images in PostScript format using the ps output device.  In the second pass, the output driver post-grohtml translates the
       output of troff(1) to HTML.

       grohtml writes output encoded in UTF-8 and has built-in HTML entities for all non-composite Unicode characters.  In  spite
       of  this,  groff  may  issue warnings about unknown special characters if they can't be found during the first pass.  Such
       warnings can be safely ignored unless the special characters appear inside a table or equation.

   Typefaces
       grohtml supports the standard four styles: R (roman), I (italic), B (bold), and BI (bold-italic).  Fonts are grouped  into
       families T and C having members in each style.

              TR     Times roman
              TI     Times italic
              TB     Times bold
              TBI    Times bold-italic
              CR     Courier roman
              CI     Courier italic
              CB     Courier bold
              CBI    Courier bold-italic

       A special font, S, is also provided to accommodate roff documents that expect it to always be available.

   Font description files
       The  font  description  files  used  with  grohtml  expose  the  same  glyph  repertoire  in  their charset sections.  See
       groff_font(5).

   Dependencies
       pre-grohtml generates an image whenever an eqn equation, tbl table, or pic picture is encountered in the  input.   grohtml
       therefore  may  run  several  commands  as  part  of  its  operation.  These include the Netpbm tools pnmcrop, pnmcut, and
       pnmtopng; Ghostscript (gs); and the PSUtils tool psselect.

Options
       --help displays a usage message, while -v and --version show version information; all exit afterward.

       -a anti-aliasing-text-bits
              Number of bits of antialiasing information to be used by text when generating PNG images.  The default is 4 but  0,
              1,  and  2 are also valid.  Your system's version of gs must support the -dTextAlphaBits option in order to exploit
              antialiasing.  A value of 0 stops grohtml from issuing antialiasing commands to gs.

       -b     Initialize the background color to white.

       -C     Suppress output of “CreationDate:” HTML comment.

       -D image-directory
              Instruct grohtml to place all image files into directory image-directory.

       -e     Direct eqn to produce MathML.

              This option should not be manually specified; it is synthesized by groff depending on  whether  it  was  given  the
              -Thtml or -Txhtml option.

       -F font-directory
              Prepend directory font-directory/devname to the search path for font and device description files; name is the name
              of the device, usually html.

       -g anti-aliasing-graphic-bits
              Number of bits of antialiasing information to be used by graphics when generating PNG images.  The default is 4 but
              0, 1, and 2 are also valid.  Your system's version of gs must support the -dGraphicAlphaBits option in order to ex‐
              ploit antialiasing.  A value of 0 stops grohtml from issuing antialiasing commands to gs.

       -G     Suppress output of “Creator:” HTML comment.

       -h     Generate section headings by using HTML B elements and increasing the font size, rather than HTML H elements.

       -i resolution
              Set the image resolution in pixels per inch; the default is 100.

       -I image-stem
              Determine  the  image  file  name stem.  If omitted, grohtml uses grohtml-XXXXX (where XXXXX is the process ID).  A
              dash is appended to the stem to separate it from the following image number.

       -j output-stem
              Instruct grohtml to split the HTML output into multiple files.  Output is written to a new  file  at  each  section
              heading (but see option -S below) named output-stem-n.html.

       -l     Turn off the production of automatic section links at the top of the document.

       -n     Generate simple heading anchors whenever a section/number heading is found.  Without the option the anchor value is
              the  textual  heading.   This  can cause problems when a heading contains a “?” on older versions of some browsers.
              This feature is automatically enabled if a heading contains an image.

       -o image-vertical-offset
              Specify the vertical offset of images in points.

       -p     Display page rendering progress to the standard error stream.  grohtml displays a page number only when an image is
              required.

       -r     Turn off the automatic header and footer line (HTML rule).

       -s base-type-size
              Set the document's base type size in points.  When this size is used in the source, it corresponds to the HTML base
              type size.  Every increase of two points in the source will produce a “big” element, and conversely when a decrease
              of two points is seen, a “small” element is emitted.

       -S heading-level
              When splitting HTML output (see option -j above), split at each nested heading level defined by  heading-level,  or
              higher).  The default is 1.

       -V     Create an XHTML or HTML validator button at the bottom of each page of the document.

       -x html-dialect
              Select HTML dialect.  Currently, html-dialect should be either the digit 4 or the letter x, which indicates whether
              grohtml should generate HTML 4 or XHTML, respectively.

              This  option  should  not  be  manually specified; it is synthesized by groff depending on whether it was given the
              -Thtml or -Txhtml option.

       -y     Produce a right-aligned groff signature at the end of the document (only if -V is also specified).

Environment
       GROFF_FONT_PATH
              lists directories in which to search for devhtml, grohtml's directory of device and font  description  files.   See
              troff(1) and groff_font(5).

       SOURCE_DATE_EPOCH
              A  timestamp  (expressed  as  seconds since the Unix epoch) to use as the output creation timestamp in place of the
              current time.  The time is converted to human-readable form using gmtime(3) and asctime(3), and recorded in an HTML
              comment.

       TZ     The time zone to use when converting the current time to human-readable form; see tzset(3).   If  SOURCE_DATE_EPOCH
              is used, it is always converted to human-readable form using UTC.

Files
       /usr/share/groff/1.23.0/font/devhtml/DESC
              describes the html output device.

       /usr/share/groff/1.23.0/font/devhtml/F
              describes the font known as F on device html.

       /usr/share/groff/1.23.0/tmac/html.tmac
              defines  font  mappings,  special  characters, and colors for use with the html output device.  It is automatically
              loaded by troffrc when either of the html or xhtml output devices is selected.

       /usr/share/groff/1.23.0/tmac/html-end.tmac
              finalizes setup of the html output device.  It is automatically loaded by troffrc-end when either of  the  html  or
              xhtml output devices is selected.

       grohtml uses temporary files.  See groff(1) for details about where such files are created.

Bugs
       grohtml is still beta code.

       grohtml  does  not  truly  support hyphenation, but you can fool it into hyphenating long input lines, which can appear in
       HTML output with a hyphenated word followed by a space but no line break.

See also
       groff(1), troff(1), groff_font(5)

groff 1.23.0                                              31 March 2024                                                grohtml(1)