The Character Metrics class.
This class represents decoded character information. Within the context of
this library, the term "character" denotes an instance of this class.
character.lisp
(file)
standard-object
(class)
repeated-character
(method)
bottom-character
(method)
middle-character
(method)
top-character
(method)
print-object
(method)
extension-recipe
(method)
extension-recipe
(method)
next-character
(method)
next-character
(method)
italic-correction
(method)
italic-correction
(method)
depth
(method)
depth
(method)
height
(method)
height
(method)
width
(method)
width
(method)
font
(method)
code
(method)
The character’s width.
It is expressed in design size units, or in TeX point units if the font is
frozen.
:width
width
(generic function)
(setf width)
(generic function)
The character’s height.
It is expressed in design size units, or in TeX point units if the font is
frozen.
:height
height
(generic function)
(setf height)
(generic function)
The character’s depth.
It is expressed in design size units, or in TeX point units if the font is
frozen.
:depth
depth
(generic function)
(setf depth)
(generic function)
The character’s italic correction.
TeX uses this value for regular characters followed by the command /, and
also in math mode for superscript placement. It is expressed in design size
units, or in TeX point units if the font is frozen.
:italic-correction
italic-correction
(generic function)
(setf italic-correction)
(generic function)
The next character in a character list.
This slot is non-null only if the character is part of a chain of characters
of ascending size, and not the last one (see TeX: the Program [544]). It is
mutually exclusive with the EXTENSION-RECIPE slot, and also with the existence
of a ligature or kerning program for this character.
next-character
(generic function)
(setf next-character)
(generic function)
The character’s extension recipe, or NIL.
This slot is non-null only if this character is extensible (see TeX: the
Program [544]). It is mutually exclusive with the NEXT-CHARACTER slot, and
also with the existence of a ligature or kerning program for this character.
extension-recipe
(generic function)
(setf extension-recipe)
(generic function)
The TeX Font Metrics class.
This class represents decoded font information. Within the context of this
library, the term "font" denotes an instance of this class, or of one of its
subclasses.
font.lisp
(file)
standard-object
(class)
math-symbols-font
(class)
math-extension-font
(class)
initialize-instance
(method)
print-object
(method)
boundary-character
(method)
boundary-character
(method)
kernings
(method)
kernings
(method)
ligatures
(method)
ligatures
(method)
character-count
(method)
character-count
(method)
characters
(method)
characters
(method)
max-code
(method)
max-code
(method)
min-code
(method)
min-code
(method)
parameters
(method)
parameters
(method)
extra-space
(method)
extra-space
(method)
em
(method)
em
(method)
ex
(method)
ex
(method)
interword-shrink
(method)
interword-shrink
(method)
interword-stretch
(method)
interword-stretch
(method)
interword-space
(method)
interword-space
(method)
slant
(method)
slant
(method)
face-code
(method)
face-code
(method)
expansion
(method)
expansion
(method)
slope
(method)
slope
(method)
weight
(method)
weight
(method)
face-number
(method)
face-number
(method)
7bits-safe
(method)
7bits-safe
(method)
family
(method)
family
(method)
encoding
(method)
encoding
(method)
original-design-size
(method)
original-design-size
(method)
design-size
(method)
design-size
(method)
frozen
(method)
frozen
(method)
checksum
(method)
checksum
(method)
file
(method)
file
(method)
name
(method)
name
(method)
The font’s name.
When the font is loaded from a file, it defaults to the file’s base name,
along with potential scaling information.
:name
name
(generic function)
(setf name)
(generic function)
The file from which the font was loaded, or NIL.
:file
file
(generic function)
(setf file)
(generic function)
The font’s checksum, as provided by Metafont.
checksum
(generic function)
(setf checksum)
(generic function)
Whether the font is frozen.
frozen
(generic function)
(setf frozen)
(generic function)
The font’s design size, in units of TeX points.
design-size
(generic function)
(setf design-size)
(generic function)
The font’s original design size, in units of TeX points.
original-design-size
(generic function)
(setf original-design-size)
(generic function)
The font’s character coding scheme (a BCPL string), or NIL.
encoding
(generic function)
(setf encoding)
(generic function)
The font’s family (a BCPL string), or NIL.
family
(generic function)
(setf family)
(generic function)
Whether the font is 7 bits safe (0 or 1), or NIL.
When 1, it means that no character of code lesser than 128 can lead to a
character of code greater than 128 by ways of ligatures or extensible
recipes.
7bits-safe
(generic function)
(setf 7bits-safe)
(generic function)
The font’s face number, or NIL.
face-number
(generic function)
(setf face-number)
(generic function)
The font’s weight (:medium, :bold, :light), or NIL. When available, it is decoded from the font face number.
weight
(generic function)
(setf weight)
(generic function)
The font’s slope (:roman, :italic), or NIL.
When available, it is decoded from the font face number.
slope
(generic function)
(setf slope)
(generic function)
The font’s expansion (:regular, :condensed, :extended), or NIL. When available, it is decoded from the font face number.
expansion
(generic function)
(setf expansion)
(generic function)
The font’s 3-letters face code, or NIL.
When available, it is the concatenation of the upcased first letters of the
font’s weight, slope, and expansion.
face-code
(generic function)
(setf face-code)
(generic function)
The font’s slant (a scalar ratio).
0
slant
(generic function)
(setf slant)
(generic function)
The font’s normal interword space.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
interword-space
(generic function)
(setf interword-space)
(generic function)
The font’s interword stretchability.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
interword-stretch
(generic function)
(setf interword-stretch)
(generic function)
The font’s interword shrinkability.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
interword-shrink
(generic function)
(setf interword-shrink)
(generic function)
The font’s ex size.
It is expressed in design size units, or in TeX point units if the font is
frozen.
The font’s em size.
It is expressed in design size units, or in TeX point units if the font is
frozen.
The font’s extra space.
It is expressed in design size units, or in TeX point units if the font is
frozen.
This is the additional space to put at the end of sentences.
0
extra-space
(generic function)
(setf extra-space)
(generic function)
The font’s additional parameters array, or NIL.
Parameters are expressed in design size units, or in TeX point units if the
font is frozen.
parameters
(generic function)
(setf parameters)
(generic function)
The font’s smallest character code.
min-code
(generic function)
(setf min-code)
(generic function)
The font’s largest character code.
max-code
(generic function)
(setf max-code)
(generic function)
The font’s characters.
This is a hash table associating character codes with characters.
(make-hash-table :test (function eq))
characters
(generic function)
(setf characters)
(generic function)
The font’s number of characters.
The character count does not include the boundary character, unless that
character really exists in the font (has non-zerop metrics).
character-count
(generic function)
(setf character-count)
(generic function)
The font’s ligatures.
This is a hash table associating conses of characters with the corresponding
ligature.
(make-hash-table :test (function equal))
ligatures
(generic function)
(setf ligatures)
(generic function)
The font’s kernings.
This is a hash table associating conses of characters with the corresponding
kerning. They are expressed in design size units, or in TeX point units if
the font is frozen.
(make-hash-table :test (function equal))
kernings
(generic function)
(setf kernings)
(generic function)
The font’s boundary character, or NIL.
This character is also accessible by code, like normal ones. However, it is
the only character the code of which may be outside [MIN-CODE,MAX-CODE] (see
TeX: the Program [545]). Finally, this character is not included in the
character count, unless it exists for real in the font (has non-zero
metrics).
boundary-character
(generic function)
(setf boundary-character)
(generic function)
The Ligature class.
This class represents a decoded ligature program. Within the context of this
library, the term "ligature" denotes an instance of this class.
font.lisp
(file)
standard-object
(class)
pass-over
(method)
delete-after
(method)
delete-before
(method)
composite
(method)
The character to insert between the two original ones.
:composite
composite
(generic function)
Whether to delete the character before the ligature.
:delete-before
delete-before
(generic function)
Whether to delete the character after the ligature.
:delete-after
delete-after
(generic function)
The Math Extension Font class.
This class represents fonts with the "TeX math extension" character coding
scheme.
font.lisp
(file)
font
(class)
parse-parameters
(method)
scale
(method)
big-op-spacing5
(method)
big-op-spacing5
(method)
big-op-spacing4
(method)
big-op-spacing4
(method)
big-op-spacing3
(method)
big-op-spacing3
(method)
big-op-spacing2
(method)
big-op-spacing2
(method)
big-op-spacing1
(method)
big-op-spacing1
(method)
default-rule-thickness
(method)
default-rule-thickness
(method)
The font’s default rule thickness.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
default-rule-thickness
(generic function)
(setf default-rule-thickness)
(generic function)
The font’s BIG-OP-SPACING1 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
big-op-spacing1
(generic function)
(setf big-op-spacing1)
(generic function)
The font’s BIG-OP-SPACING2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
big-op-spacing2
(generic function)
(setf big-op-spacing2)
(generic function)
The font’s BIG-OP-SPACING3 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
big-op-spacing3
(generic function)
(setf big-op-spacing3)
(generic function)
The font’s BIG-OP-SPACING4 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
big-op-spacing4
(generic function)
(setf big-op-spacing4)
(generic function)
The font’s BIG-OP-SPACING5 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
big-op-spacing5
(generic function)
(setf big-op-spacing5)
(generic function)
The Math Symbols Font class.
This class represents fonts with the "TeX math symbols" character coding
scheme.
font.lisp
(file)
font
(class)
parse-parameters
(method)
scale
(method)
axis-height
(method)
axis-height
(method)
delim2
(method)
delim2
(method)
delim1
(method)
delim1
(method)
subdrop
(method)
subdrop
(method)
supdrop
(method)
supdrop
(method)
sub2
(method)
sub2
(method)
sub1
(method)
sub1
(method)
sup3
(method)
sup3
(method)
sup2
(method)
sup2
(method)
sup1
(method)
sup1
(method)
denom2
(method)
denom2
(method)
denom1
(method)
denom1
(method)
num3
(method)
num3
(method)
num2
(method)
num2
(method)
num1
(method)
num1
(method)
The font’s NUM1 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
num1
(generic function)
(setf num1)
(generic function)
The font’s NUM2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
num2
(generic function)
(setf num2)
(generic function)
The font’s NUM2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
num3
(generic function)
(setf num3)
(generic function)
The font’s DENOM1 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
denom1
(generic function)
(setf denom1)
(generic function)
The font’s DENOM2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
denom2
(generic function)
(setf denom2)
(generic function)
The font’s SUP1 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
sup1
(generic function)
(setf sup1)
(generic function)
The font’s SUP2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
sup2
(generic function)
(setf sup2)
(generic function)
The font’s SUP2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
sup3
(generic function)
(setf sup3)
(generic function)
The font’s SUB1 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
sub1
(generic function)
(setf sub1)
(generic function)
The font’s SUB2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
sub2
(generic function)
(setf sub2)
(generic function)
The font’s SUPDROP parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
supdrop
(generic function)
(setf supdrop)
(generic function)
The font’s SUBDROP parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
subdrop
(generic function)
(setf subdrop)
(generic function)
The font’s DELIM1 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
delim1
(generic function)
(setf delim1)
(generic function)
The font’s DELIM2 parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
delim2
(generic function)
(setf delim2)
(generic function)
The font’s AXIS-HEIGHT parameter.
It is expressed in design size units, or in TeX point units if the font is
frozen.
0
axis-height
(generic function)
(setf axis-height)
(generic function)