TKE_Text_Font

Opcode
ASCII F
Hexadecimal 46
Decimal 70

 

Operands

Byte mask, Byte value, [Byte mask_high, Byte value_high]
[Byte names_length], [(names_length)xByte names], [Float size], [Byte size_units], [Float size_tolerance], [Byte tolerance_units], [Byte transforms], [Float rotation], [Float slant], [Float width_scale], [Float extra_space], [Byte extra_space_units], [Float line_spacing]

mask bitmask of options.
value bitmask indicating which options are set on.
mask_high if high bit is set in the first mask byte, this set of bits is added to mask.
value_high if high bit is set in the first mask byte, this set of bits is added to value.
names_length length of names string
names one or more font names to attempt to use
size desired size of text
size_units enumeration describing how size is interpreted
size_tolerance indicates acceptable size difference for fixed-size bitmap fonts
tolerance_units enumeration describing how tolerance is interpreted
transforms enumeration indicating how text string is affected by modelling matrix
rotation rotation of characters relative to the horizontal (in degrees). value of -1 indicates characters are rotated to lie along the text path
slant amount of slant applied to characters (in degrees)
width_scale horizontal scaling applied to the entire text string
extra_space additional space added between characters
extra_space_units enumeration describing how extra space is interpreted
line_spacing distance between baseline of multi-line strings, as a multiple of the font height

 

Notes

Text attributes which are set on the currently open segment.  These attributes are applied to any text that lies in this part of the segment tree.

Mask/Value bits:

0001 Names
0002 Size
0004 Size Tolerance
0008 Transforms
0010 Rotation
0020 Slant
0040 Width_Scale
0080 second byte required
0100 Extra Space
0200 Line Spacing
0400 Outline preferred
0800 Underline preferred
1000 Strikethrough preferred
2000 Overline preferred

Size Units options:

0 Object space size
1 Screen space size
2 Window space size
3 Points
4 Pixels
5 Percentage (only used for Size Tolerance)

Transform options:

0 Only position of each character is transformed
1 Entire character glyphs are transformed