Vertical Writing with Proportional Fonts

The Character Text Path Direction command was introduced with the HP LaserJet 4PJ printer to allow users to vertically rotate Asian fonts which were dual pitched. That is, the single-byte characters were half-width and the other characters were full-width.

An algorithm was implemented to determine whether or not to counter-rotate characters when using the vertical-rotated printing mode of the Character Text Path Direction command. A character is rotated if the glyph is full-width; otherwise, the character is not rotated.

Since the introduction of the LaserJet 4PJ, many vendors have produced proportional versions of their Asian fonts. Thus, the algorithm described above is no longer appropriate for determining character rotation.

A new method to explicitly enumerate which characters should be counter-rotated in the font is being introduced with HP LaserJet 5 and 5M printers. The new method consists of adding an optional font segment to Font Format

16.The optional segment, which is called the Vertical Exception (VE) segment, has the following form:

UBYTE[2] SEGMENT ID

= ’VE’

UBYTE Format

= 0

(other values reserved)

 

UBYTE NumRanges

= N

UINT16 Range1FirstCode

 

UINT16 Range1LastCode

 

UINT16 RangeNFirstCode

UINT16 RangeNLastCode

Printer-Specific Differences 2-101