CHAPTER 5
406
Text
5.3.1 Text-Positioning Operators
Text space
is the coordinate system in which text is shown. It is defined by the
text matrix,
T
m
, and the text state parameters
T
fs
,
T
h
, and
T
rise
, which together
determine the transformation from text space to user space. Specifically, the ori-
gin of the first glyph shown by a text-showing operator is placed at the origin of
text space. If text space has been translated, scaled, or rotated, then the position,
size, or orientation of the glyph in user space is correspondingly altered.
TABLE 5.5 Text-positioning operators
OPERANDS
OPERATOR
DESCRIPTION
t
x
t
y
Td
Move to the start of the next line, offset from the start of the current line by
(
t
x
,
t
y
).
t
x
and
t
y
are numbers expressed in unscaled text space units. More pre-
cisely, this operator performs the following assignments:
T
m
=
T
lm
=
1
0
t
x
0 0
1 0
×
T
lm
t
y
1
t
x
t
y
TD
Move to the start of the next line, offset from the start of the current line by
(
t
x
,
t
y
). As a side effect, this operator sets the leading parameter in the text state.
This operator has the same effect as the following code:
−
t
y
TL
t
x
t
y
Td
a b c d e f
Tm
Set the text matrix,
T
m
, and the text line matrix,
T
lm
:
T
m
=
T
lm
=
a b
0
c d
0
e f
1
The operands are all numbers, and the initial value for
T
m
and
T
lm
is the identity
matrix,
[ 1 0 0 1 0 0 ]
. Although the operands specify a matrix, they are passed
to
Tm
as six separate numbers, not as an array.
The matrix specified by the operands is not concatenated onto the current text
matrix, but replaces it.
—
T*
Move to the start of the next line. This operator has the same effect as the code
0
T
l
Td
where
T
l
is the current leading parameter in the text state.