Some control characters have special meaning:
Control Sequence Codes | Meaning |
---|---|
9, dx_low, middle, high |
Move print position horizontally |
11, dy_low, middle, high |
Move print position verically |
17, colour |
Set font colour (+&80 for background). Use 19… instead |
18, background, foreground, offset |
See Font_SetFontColours. Use 19… instead |
19, bg_R, bg_G, bg_B, fg_R, fg_G, fg_B, offset |
See ColourTrans_SetFontColours |
21, comment_string, ctrl_terminated (any) |
Skip and ignore the comment string |
25, underline_pos, thickness |
Turn underline on/off |
26, font_handle |
See Font_SetFont |
27, ALIGN; a, b, c, d |
Partial Font Transformation Matrix (with no translation) |
28, ALIGN; a, b, c, d, e, f |
Full Font Transformation Matrix (with translation) |
There are no spaces between control sequence fields. (Spaces have been added to the examples above to make them easier to read.)
With codes 9 and 11, the print-position is given in millipoints.
With code 25, position and thickness is given in 1/256^th^ of current font size. Position is sign extended, thickness is unsigned. Set thickness to 0 to turn off underlining.
With codes 27 and 28, the code must be followed by 0-3 null bytes to word align the Font Transformation Matrix.
When using 16 or 32-bit characters, these take a slightly different form.