grohtml(1) — Linux manual page
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 default 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. It writes 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 UTF-8-encoded output 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. You can ignore
these warnings 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
exploit 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/local/share/groff/1.23.0/font/devhtml/DESC
describes the html output device.
/usr/local/share/groff/1.23.0/font/devhtml/F
describes the font known as F on device html.
/usr/local/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/local/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)
COLOPHON
This page is part of the groff (GNU troff) project. Information
about the project can be found at
⟨http://www.gnu.org/software/groff/⟩. If you have a bug report
for this manual page, see ⟨http://www.gnu.org/software/groff/⟩.
This page was obtained from the project's upstream Git repository
⟨https://git.savannah.gnu.org/git/groff.git⟩ on 2024-06-14. (At
that time, the date of the most recent commit that was found in
the repository was 2024-06-10.) If you discover any rendering
problems in this HTML version of the page, or you believe there
is a better or more up-to-date source for the page, or you have
corrections or improvements to the information in this COLOPHON
(which is not part of the original manual page), send a mail to
man-pages@man7.org