xfd - display all the characters in an X font
xfd [-options ...]
-fn fontname
xfd [-options ...]
-fa fontname
The
xfd utility creates a window containing the name of the font being
displayed, a row of command buttons, several lines of text for displaying
character metrics, and a grid containing one glyph per cell. The characters
are shown in increasing order from left to right, top to bottom. The first
character displayed at the top left will be character number 0 unless the
-start option has been supplied in which case the character with the
number given in the
-start option will be used.
The characters are displayed in a grid of boxes, each large enough to hold any
single character in the font. Each character glyph is drawn using the
PolyText16 request (used by the
Xlib routine
XDrawString16) or
the XftDrawString32 routine, depending on whether the
-fn or
-fa
option was given. If the
-box option is given, a rectangle will be
drawn around each character, showing where an ImageText16 request (used by the
Xlib routine
XDrawImageString16) would cause background color to
be displayed.
The origin of each glyph is normally set so that the character is drawn in the
upper left hand corner of the grid cell. However, if a glyph has a negative
left bearing or an unusually large ascent, descent, or right bearing (as is
the case with
cursor font), some character may not appear in their own
grid cells. The
-center option may be used to force all glyphs to be
centered in their respective cells.
All the characters in the font may not fit in the window at once. To see the
next page of glyphs, press the
Next button at the top of the window. To
see the previous page, press
Prev. To exit
xfd, press
Quit.
Individual character metrics (index, width, bearings, ascent and descent) can be
displayed at the top of the window by clicking on the desired character.
The font name displayed at the top of the window is the full name of the font,
as determined by the server. See
xlsfonts and
fc-list for ways
to generate lists of fonts, as well as more detailed summaries of their
metrics and properties.
xfd accepts all of the standard toolkit command line options along with
the additional options listed below:
- -fn font
- This option specifies the core X server side font to be
displayed. This can also be set with the FontGrid font resource. A
font must be specified.
- -fa font
- This option specifies a Xft font to be displayed. This can
also be set with the FontGrid face resource. A font pattern must be
specified.
- -box
- This option indicates that a box should be displayed
outlining the area that would be filled with background color by an
ImageText request. This can also be set with the FontGrid boxChars
resource. The default is False.
- -center
- This option indicates that each glyph should be centered in
its grid. This can also be set with the FontGrid centerChars
resource. The default is False.
- -start number
- This option specifies the glyph index of the upper left
hand corner of the grid. This is used to view characters at arbitrary
locations in the font. This can also be set with the FontGrid
startChar resource. The default is 0.
- -bc color
- This option specifies the color to be used if ImageText
boxes are drawn. This can also be set with the FontGrid boxColor
resource.
- -rows numrows
- This option specifies the number of rows in the grid. This
can also be set with the FontGrid cellRows resource.
- -columns numcols
- This option specifies the number of columns in the grid.
This can also be set with the FontGrid cellColumns resource.
In order to specify resources, it is useful to know the widgets which compose
xfd. In the notation below, indentation indicates hierarchical
structure. The widget class name is given first, followed by the widget
instance name. The application class name is Xfd.
Xfd xfd
Paned pane
Label fontname
Box box
Command quit
Command prev
Command next
Label select
Label metrics
Label range
Label start
Form form
FontGrid grid
The FontGrid widget is an application-specific widget, and a subclass of the
Simple widget in the Athena widget set. The effects and instance names of this
widget's resources are given in the
OPTIONS section. Capitalize the
first letter of the resource instance name to get the corresponding class
name.
The instance names of the application specific resources are given below.
Capitalize the first letter of the resource instance name to get the
corresponding class name. These resources are unlikely to be interesting
unless you are localizing xfd for a different language.
- selectFormat
- Specifies a printf-style format string used to display
information about the selected character. The default is "character
0x%02x%02x (%u,%u) (%#o,%#o)". The arguments that will come after the
format string are char.byte1, char.byte2, char.byte1, char.byte2,
char.byte1, char.byte2. char.byte1 is byte 1 of the selected character.
char.byte2 is byte 2 of the selected character.
- metricsFormat
- Specifies a printf-style format string used to display
character metrics. The default is "width %d; left %d, right %d;
ascent %d, descent %d (font %d, %d)". The arguments that will come
after the format string are the character metrics width, lbearing,
rbearing, character ascent, character descent, font ascent, and font
descent.
- rangeFormat
- Specifies a printf-style format string used to display the
range of characters currently being displayed. The default is "range:
0x%02x%02x (%u,%u) thru 0x%02x%02x (%u,%u)". The arguments that will
come after the format string are the following fields from the XFontStruct
that is returned from opening the font: min_byte1, min_char_or_byte2,
min_byte1, min_char_or_byte2, max_byte1, max_char_or_byte2, max_byte1,
max_char_or_byte2.
- startFormat
- Specifies a printf-style format string used to display
information about the character at the upper left corner of the font grid.
The default is "upper left: 0x%04x (%d,%d)". The arguments that
will come after the format string are the new character, the high byte of
the new character, and the low byte of the new character.
- nocharFormat
- Specifies a printf-style format string to display when the
selected character does not exist. The default is "no such character
0x%02x%02x (%u,%u) (%#o,%#o)". The arguments that will come after the
format string are the same as for the selectFormat resource.
X(7),
xlsfonts(1),
xrdb(1),
xfontsel(1),
fc-list(1),
fonts.conf(5),
X Logical
Font Description Conventions
The program should skip over pages full of non-existent characters.
Jim Fulton, MIT X Consortium; previous program of the same name by Mark
Lillibridge, MIT Project Athena.