Vertical Substitution Segment

The Vertical Substitution Segment contains pairs of glyph IDs. Each pair specifies the horizontal and vertical glyph ID for a character. The segment can be built directly from a TrueType mort table which contains a vertical substitution array. The segment definition is shown in the table below.

Byte

15 (MSB)

8

 

7

(LSB) 0

Byte

0

VT (22100)

 

 

 

 

1

2

Data Segment Size (4*n+4) *

 

3

4

 

 

 

 

 

5

6

Horizontal Glyph ID #1

 

7

8

Vertical Glyph ID #1

 

 

9

. . .

 

 

 

 

 

. . .

4*n+2

Horizontal Glyph ID #n

 

4*n+3

4*n+4

Vertical Glyph ID #n

 

 

4*n+5

4*n+6

End of table mark #1 = 0xFFFF

4*n+7

4*n+8

End of table mark #2 = 0xFFFF

4*n+9

The Horizontal Glyph ID field is used by TrueType as an ID number for the horizontal glyph data associated with a given character. The Vertical Glyph ID field contains the ID number for the vertical glyph data associated with the same character.

The vertical glyphs can be downloaded using the PCL Character Definition Command using a character code = 0xFFFF.

A TrueType mort table typically contains a header of 76 bytes, followed by the vertical substitution array which follows the segment format described here. However, the mort table header is designed to be variable-length, and the location of the vertical substitution data may be located elsewhere in mort tables in future fonts.

If the Font Type is not Type 3 (16-bit fonts), this data segment is ignored.

Printer-Specific Differences 2-41