HP 4 FAMILY User Manual

Page 78

Advertising
background image

If the value pairs are not sorted by horizontal glyph ID, the
data segment is invalid. If the End of Table mark #1 is not
0xFFFF, the data segment is invalid. The location of the
end of the table is determined using the Data Segment Size
field. If the segment is invalid, the font download is ignored.

Typeface String Segment

The purpose of this segment is to provide a substitute
string to print for a permanent downloaded font when doing
a PCL Typeface List printout. It has the following structure:

Byte

15 (MSB) 8

7 (LSB) 0

Byte

0

TF (21574)

1

2
4

Data Segment Size (2*n+2) *

3
5

6

Embedded Font
Name Flag

Substitute String
Length (n)

7

8

Substitute String Character List

9

. . .

. . .

* This segment is for Font Format 16. The Data Segment Size field for Font Format 16

fonts is 4 bytes; the segment for Font Format 15 fonts is identical except the Data
Segment Size field is 2 bytes instead.

Embedded Font Name Flag (UB)—A zero value in this field
is used to indicate that the ASCII name of the font (from
the Font Name field) should be printed in addition to the
substitute string. A non-zero value is used to indicate that
only the substitute string should be printed.

Substitute String Length (UB)—the number of UI
characters in the Substitute String Character List.

Substitute String Character List (array of UI)—the
characters which make up the substitute string. Each
character is represented as a UI value. If the font is a
bound font, then the values are accessed by their
character codes values; if the font is unbound, then the
Unicode index numbers (see Appendix D) are used.

2-42 Printer-Specific Differences

Advertising