NAME
plotfont - produce character maps of fonts supported
by the plotting utilities
SYNOPSIS
plotfont [ options ] fonts
DESCRIPTION
plotfont produces a character map for any font that is
supported by the plotting utilities, which include graph(1),
plot(1),
pic2plot(1),
tek2plot(1),
and the GNU libplot 2-D graphics export library (see plot(3)).
Which fonts are supported depends on the output format, which is
specified by the -T option. A listing of the fonts available
in any specified output format may be obtained with the
--help-fonts option (see below).
The character map, or maps, will be written to standard output
in the specified format. For example, the Times-Roman font is
available when producing Postscript output. The command plotfont
-T ps Times-Roman > charmap.ps will yield a character map of
the Times-Roman font, in a Postscript format that can be viewed or
edited with the idraw(1)
drawing editor. The Times-Roman font is also available when
producing Fig output, which can be viewed or edited with the
xfig(1)
drawing editor. The command plotfont -T fig Times-Roman >
charmap.fig will yield the same character map, but in Fig
format rather than in Postscript format.
As another example, the Univers font is available when producing
PCL 5 output. The command plotfont -T pcl Univers >
charmap.pcl will produce a character map of the Univers font,
in PCL 5 format.
When producing output for the X Window System, i.e., for a
popped-up window, any scalable X Window System font that has an
XLFD (i.e., X Logical Font Description) name is supported. For
example, the command plotfont -T X utopia-medium-r-normal
will pop up a window, and draw a character map of the
Utopia-Regular font. "utopia-medium-r-normal" is a truncated
version of the Utopia-Regular font's XLFD name. The Utopia-Regular
font is available on most X Window System displays.
OPTIONS
General Options
- -T type
-
- --output-format type
- Select type as the output format. It may be "X", "png",
"pnm", "gif", "svg", "ai", "ps", "cgm", "fig", "pcl", "hpgl",
"regis", "tek", or "meta" (the default). These refer respectively
to the X Window System, PNG (Portable Network Graphics) format,
portable anymap format (PBM/PGM/PPM), a pseudo-GIF format that does
not use LZW encoding, the new XML-based Scalable Vector Graphics
format, the format used by Adobe Illustrator, Postscript or
Encapsulated Postscript (EPS) that can be edited with idraw(1),
CGM format (by default, confirming to the WebCGM profile), the
format used by the xfig(1)
drawing editor, the Hewlett-Packard PCL 5 printer language, the
Hewlett-Packard Graphics Language, ReGIS graphics format (which can
be displayed by the dxterm(1)
terminal emulator or by a VT330 or VT340 terminal), Tektronix
format (which can be displayed by the xterm(1)
terminal emulator), and device-independent GNU metafile format
itself. Unless type is "X", an output file is produced and
written to standard output.
- Files in PNG, PNM, pseudo-GIF, AI, or Fig format contain only a
single page of graphics. So if the -T png option, the -T
pnm option, the -T gif option, the -T ai option,
or the -T fig option is used, the output file will contain a
character map for only the first-specified font.
- A listing of the fonts available in any specified output format
may be obtained with the --help-fonts option (see below). If
a requested font is unavailable, a default font will be
substituted. The default font is "Helvetica" for "X", "svg", "ai",
"ps", "cgm", and "fig", "Univers" for "pcl", and "HersheySerif" for
"png", "pnm", "gif", "hpgl", "regis", "tek", and "meta".
- -1
-
- --lower-half
- Generate a character map for the lower half of each specified
font. This is the default.
- -2
-
- --upper-half
- Generate a character map for the upper half of each specified
font.
- -o
-
- --octal
- Number the characters in octal rather than in decimal (the
default).
- -x
-
- --hexadecimal
- Number the characters in hexadecimal rather than in decimal
(the default).
- --box
- Surround each character with a box, showing its extent to left
and right. The default is not to do this.
- -j row
-
- --jis-row row
- Generate a character map for row row of a Japanese font
arranged according to JIS [Japanese Industrial Standard] X0208. The
only such font currently available is the HersheyEUC [Extended Unix
Code] font. If used, this option overrides the -1 and
-2 options. The valid rows are 1...94. In the JIS X0208
standard, Roman characters are located in row 3, and Japanese
syllabic characters (Hiragana and Katakana) are located in rows 4
and 5. Greek and Cyrillic characters are located in rows 6 and 7.
Japanese ideographic characters (Kanji) are located in rows
16...84.
- --bg-color name
- Set the color used for the background to be name. This
is relevant only to plotfont -T X, plotfont -T png,
plotfont -T pnm, plotfont -T gif, plotfont -T
svg, plotfont -T cgm, and plotfont -T regis. An
unrecognized name sets the color to the default, which is "white".
The environment variable BG_COLOR can
equally well be used to specify the background color.
- If the -T png or -T gif option is used, a
transparent PNG file or a transparent pseudo-GIF, respectively, may
be produced by setting the TRANSPARENT_COLOR environment variable to the
name of the background color. If the -T svg or -T cgm
option is used, an output file without a background may be produced
by setting the background color to "none".
- --bitmap-size bitmap_size
- Set the size of the graphics display in which the character
map(s) will be drawn, in terms of pixels, to be bitmap_size.
The default is "570x570". This is relevant only to plotfont -T
X, plotfont -T png, plotfont -T pnm, and
plotfont -T gif, all of which produce bitmaps. If you choose
a rectangular (non-square) window size, the fonts in the character
map(s) will be scaled anisotropically, i.e., by different factors
in the horizontal and vertical directions. For plotfont -T
X, this requires an X11R6 display. Any font that cannot be
scaled in this way will be replaced by a default scalable font,
such as the vector font "HersheySerif".
- The environment variable BITMAPSIZE can equally well be used to specify
the window size. For backward compatibility, the X resource
Xplot.geometry may be used instead.
- --emulate-color option
- If option is yes, replace each color in the
output by an appropriate shade of gray. This is seldom useful,
except when using plotfont -T pcl to prepare output for a
PCL 5 device. (Many monochrome PCL 5 devices, such as monochrome
LaserJets, do a poor job of emulating color on their own.) You may
equally well request color emulation by setting the environment
variable EMULATE_COLOR to "yes".
- --numbering-font name
- Set the font used for the numbering of the characters in the
character map(s) to be name, rather than the default.
- --page-size pagesize
- Set the size of size of the page on which the character map(s)
will be positioned. This is relevant only to plotfont -T
svg, plotfont -T ai, plotfont -T ps, plotfont
-T cgm, plotfont -T fig, plotfont -T pcl, and
plotfont -T hpgl. The default is "letter", which means an
8.5 inch by 11 inch page. Any ISO page size in the range
"a0"..."a4" or ANSI page size in the range "a"..."e" may be
specified ("letter" is an alias for "a" and "tabloid" is an alias
for "b"). "legal" and "ledger" are recognized page sizes also. The
environment variable PAGESIZE can
equally well be used to specify the page size.
- The graphics display in which each character map is drawn will
be a square region that would occupy nearly the full width of the
specified page. An alternative size for the graphics display can be
specified. For example, the page size could be specified as
"letter,xsize=4in,ysize=6in", or "a4,xsize=5.0cm,ysize=100mm". For
all of the above except plotfont -T hpgl, the graphics
display will, by default, be centered on the page. For all of the
above except plotfont -T svg and plotfont -T cgm, the
graphics display may be repositioned manually, by specifying the
location of its lower left corner, relative to the lower left
corner of the page. For example, the page size could be specified
as "letter,xorigin=2in,yorigin=3in", or
"a4,xorigin=0.5cm,yorigin=0.5cm". It is also possible to specify an
offset vector. For example, the page size could be specified as
"letter,xoffset=1in", or "letter,xoffset=1in,yoffset=1.2in", or
"a4,yoffset=-1cm". In SVG format and WebCGM format it is possible
to specify the size of the graphics display, but not its position.
- --rotation angle
- Rotate the graphics display by angle degrees. Recognized
values are "0", "90", "180", and "270". "no" and "yes" are
equivalent to "0" and "90", respectively. The environment variable
ROTATION can also be used to specify
a rotation angle.
- --pen-color name
- Set the pen color to be name. An unrecognized name sets
the pen color to the default, which is "black".
Options for Metafile Output
The following option is relevant only if the -T option is
omitted or if -T meta is used. In this case the output of
plotfont will be in GNU graphics metafile format. It may be
translated to other formats by invoking plot(1).
- -O
-
- --portable-output
- Output the portable (human-readable) version of GNU metafile
format, rather than the binary version (the default). The format of
the binary version is machine-dependent.
Informational Options
- --help
- Print a list of command-line options, and exit.
- --help-fonts
- Print a table of available fonts, and exit. The table will
depend on which output format is specified with the -T
option. plotfont -T X, plotfont -T svg, plotfont
-T ai, plotfont -T ps, plotfont -T cgm, and
plotfont -T fig each support the 35 standard Postscript
fonts. plotfont -T svg, plotfont -T pcl, and
plotfont -T hpgl support the 45 standard PCL 5 fonts, and
the latter two support a number of Hewlett-Packard vector fonts.
All seven support a set of 22 Hershey vector fonts, as do
plotfont -T png, plotfont -T pnm, plotfont -T
gif, plotfont -T regis, and plotfont -T tek.
plotfont without a -T option in principle supports
any of these fonts, since its output must be translated to other
formats by invoking plot(1).
- --list-fonts
- Like --help-fonts, but lists the fonts in a single
column to facilitate piping to other programs. If no output format
is specified with the -T option, the full set of supported
fonts is listed.
- --version
- Print the version number of plotfont and the plotting
utilities package, and exit.
ENVIRONMENT
The environment variables BITMAPSIZE, PAGESIZE, BG_COLOR, EMULATE_COLOR, and ROTATION serve as backups for the options
--bitmap-size, --page-size, --bg-color,
--emulate-color, and --rotation, respectively. The
remaining environment variables are specific to individual output
formats.
plotfont -T X, which pops up a window on an X Window
System display for each character map, checks the DISPLAY environment variable. Its value
determines the display that will be used.
plotfont -T png and plotfont -T gif, which produce
output in PNG format and pseudo-GIF format respectively, are
affected by the INTERLACE environment
variable. If its value is "yes", the output will be interlaced.
Also, if the TRANSPARENT_COLOR
environment variable is set to the name of a color, that color will
be treated as transparent in the output.
plotfont -T pnm, which produces output in portable anymap
(PBM/PGM/PPM) format, is affected by the PNM_PORTABLE environment variable. If its value
is "yes", the output will be in a human-readable format rather than
binary (the default).
plotfont -T cgm, which produces output in CGM (Computer
Graphics Metafile) format, is affected by the CGM_MAX_VERSION and CGM_ENCODING environment variables. By default,
it produces a binary-encoded version of CGM version 3 format. For
backward compatibility, the version number may be reduced by
setting CGM_MAX_VERSION to "2" or
"1". Irrespective of version, the output CGM file will use the
human-readable clear text encoding if CGM_ENCODING is set to "clear_text". However,
only binary-encoded CGM files conform to the WebCGM profile.
plotfont -T pcl, which produces PCL 5 output for
Hewlett-Packard printers and plotters, is affected by the
environment variable PCL_ASSIGN_COLORS. It should be set to "yes"
when producing PCL 5 output for a color printer or other color
device. This will ensure accurate color reproduction by giving the
output device complete freedom in assigning colors, internally, to
its "logical pens". If it is "no" then the device will use a fixed
set of colored pens, and will emulate other colors by shading. The
default is "no" because monochrome PCL 5 devices, which are much
more common than colored ones, must use shading to emulate color.
plotfont -T hpgl, which produces Hewlett-Packard Graphics
Language output, is affected by several environment variables. The
most important is HPGL_VERSION, which
may be set to "1", "1.5", or "2" (the default). "1" means that the
output should be generic HP-GL, "1.5" means that the output should
be suitable for the HP7550A graphics plotter and the HP758x,
HP7595A and HP7596A drafting plotters (HP-GL with some HP-GL/2
extensions), and "2" means that the output should be modern
HP-GL/2. If the version is "1" or "1.5" then the only available
fonts will be vector fonts, and all lines will be drawn with a
default width. Additionally, if the version is "1" then the filling
of arbitrary curves with solid color will not be supported (circles
and rectangles aligned with the coordinate axes may be filled,
though).
The position of the plotfont -T hpgl graphics display on
the page can be rotated 90 degrees counterclockwise by setting the
HPGL_ROTATE environment variable to
"yes". This is not the same as the rotation obtained with the
--rotation option, since it both rotates the graphics
display and repositions its lower left corner toward another corner
of the page. Besides "no" and "yes", recognized values for
HPGL_ROTATE are "0", "90", "180", and
"270". "no" and "yes" are equivalent to "0" and "90", respectively.
"180" and "270" are supported only if HPGL_VERSION is "2" (the default).
By default, plotfont -T hpgl will draw with a fixed set
of pens. Which pens are present may be specified by setting the
HPGL_PENS environment variable. If
HPGL_VERSION is "1", the default
value of HPGL_PENS is "1=black"; if
HPGL_VERSION is "1.5" or "2", the
default value of HPGL_PENS is
"1=black:2=red:3=green:4=yellow:5=blue:6=magenta:7=cyan". The
format should be self-explanatory. By setting HPGL_PENS you may specify a color for any pen in
the range #1...#31. All color names recognized by the X Window
System may be used. Pen #1 must always be present, though it need
not be black. Any other pen in the range #1...#31 may be omitted.
If HPGL_VERSION is "2" then
plotfont -T hpgl will also be affected by the environment
variable HPGL_ASSIGN_COLORS. If its
value is "yes", then plotfont -T hpgl will not be restricted
to the palette specified in HPGL_PENS: it will assign colors to "logical
pens" in the range #1...#31, as needed. The default value is "no"
because other than color LaserJet printers and DesignJet plotters,
not many HP-GL/2 devices allow the assignment of colors to logical
pens.
Opaque filling and the drawing of visible white lines are
supported only if HPGL_VERSION is "2"
and the environment variable HPGL_OPAQUE_MODE is "yes" (the default). If its
value is "no" then white lines (if any), which are normally drawn
with pen #0, will not be drawn. This feature is to accommodate
older HP-GL/2 devices. HP-GL/2 pen plotters, for example, do not
support opacity or the use of pen #0 to draw visible white lines.
Some older HP-GL/2 devices may, in fact, malfunction if asked to
draw opaque objects.
plotfont -T tek, which produces output for a Tektronix
terminal or emulator, checks the TERM
environment variable. If the value of TERM is a string beginning with "xterm",
"nxterm", or "kterm", it is taken as a sign that plotfont is
running in an X Window System VT100 terminal emulator: a copy of
xterm(1),
nxterm(1),
or kterm(1).
Before drawing graphics, plotfont -T tek will emit an escape
sequence that causes the terminal emulator's auxiliary Tektronix
window, which is normally hidden, to pop up. After the graphics are
drawn, an escape sequence that returns control to the original
VT100 window will be emitted. The Tektronix window will remain on
the screen.
If the value of TERM is a string
beginning with "kermit", "ansi.sys", or "nansi.sys", it is taken as
a sign that plotfont is running in the VT100 terminal
emulator provided by the MS-DOS version of kermit(1).
Before drawing graphics, plotfont -T tek will emit an escape
sequence that switches the terminal emulator to Tektronix mode.
Also, some of the Tektronix control codes emitted by plotfont -T
tek will be kermit-specific. There will be a limited
amount of color support, which is not normally the case (the 16
`ansi.sys' colors will be supported). After drawing graphics,
plotfont -T tek will emit an escape sequence that returns
the emulator to VT100 mode. The key sequence `ALT minus' can be
employed manually within kermit to switch between the two
modes.
SEE ALSO
graph(1),
pic2plot(1),
tek2plot(1),
plot(1),
plot(3), and
"The GNU Plotting Utilities Manual".
AUTHORS
plotfont was written by Robert S. Maier
().
BUGS
Email bug reports to .