Table of Contents
plotfont - produce character maps of fonts supported by the plotting
utilities
plotfont [ options ] fonts
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 or display type, 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.
- -T
type
- --display-type type
- Select type as the output format or display type. 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".
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.
- --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 or display type 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.
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.
graph(1)
, pic2plot(1)
, tek2plot(1)
, plot(1)
,
plot(3)
, and "The GNU Plotting Utilities Manual".
plotfont was written
by Robert S. Maier (rsm@math.arizona.edu).
Email bug reports to bug-gnu-utils@gnu.org.
Table of Contents