FATTRS: Difference between revisions
Appearance
New |
m Link to FACESIZE |
||
| Line 8: | Line 8: | ||
[[OS2 API:DataType:USHORT|USHORT]] fsSelection | [[OS2 API:DataType:USHORT|USHORT]] fsSelection | ||
[[OS2 API:DataType:LONG|LONG]] lMatch | [[OS2 API:DataType:LONG|LONG]] lMatch | ||
[[OS2 API:DataType:CHAR|CHAR]] szFacename[FACESIZE] | [[OS2 API:DataType:CHAR|CHAR]] szFacename[ [[OS2 API:Constant:FACESIZE|FACESIZE]] ] | ||
[[OS2 API:DataType:USHORT|USHORT]] idRegistry | [[OS2 API:DataType:USHORT|USHORT]] idRegistry | ||
[[OS2 API:DataType:USHORT|USHORT]] usCodePage | [[OS2 API:DataType:USHORT|USHORT]] usCodePage | ||
| Line 70: | Line 70: | ||
lMatch Matched-font identity. | lMatch Matched-font identity. | ||
szFacename[FACESIZE] Typeface name. | szFacename[ [[OS2 API:Constant:FACESIZE|FACESIZE]] ] Typeface name. | ||
The typeface name of the font, for example, Tms Rmn. | |||
idRegistry Registry identifier. | idRegistry Registry identifier. | ||
Revision as of 21:54, 25 November 2005
FATTRS
Font-attributes structure.
Type
USHORT usRecordLength USHORT fsSelection LONG lMatch CHAR szFacename[ FACESIZE ] USHORT idRegistry USHORT usCodePage LONG lMaxBaselineExt LONG lAveCharWidth USHORT fsType USHORT fsFontUse
C Declaration Method
typedef struct
Fields
usRecordLength Length of record.
fsSelection Selection indicators.
Flags causing the following features to be simulated by the
system.
Note: If an italic flag is applied to a font that is itself
defined as italic, the font is slanted further by italic
simulation.
Underscore or strikeout lines are drawn using the appropriate
attributes (for example, color) from the character bundle (see
the CHARBUNDLE datatype), not the line bundle (see LINEBUNDLE).
The width of the line, and the vertical position of the line in
font space, are determined by the font. Horizontally, the line
starts from a point in font space directly above or below the
start point of each character, and extends to a point directly
above or below the escapement point for that character.
For this purpose, the start and escapement points are those
applicable to left-to-right or right-to-left character
directions (see GpiSetCharDirection in Graphics Programming
Interface), even if the string is currently being drawn in a
top-to-bottom or bottom-to-top direction.
For left-to-right or right-to-left directions, any white space
generated by the character extra and character break extra
attributes (see GpiSetCharExtra and GpiSetCharBreakExtra in
Graphics Programming Interface Programming Reference), as well
as increments provided by the vector of increments on
GpiCharStringPos and GpiCharStringPosAt, are also
underlined/overstruck, so that in these cases the line is
continuous for the string.
FATTR_SEL_ITALIC Generate italic font.
FATTR_SEL_UNDERSCORE Generate underscored font.
FATTR_SEL_BOLD Generate bold font. (Note that the
resulting characters are wider than those
in the original font.)
FATTR_SEL_STRIKEOUT Generate font with overstruck characters.
FATTR_SEL_OUTLINE Use an outline font with hollow
characters. If this flag is not set,
outline font characters are filled. Setting
this flag normally gives better
performance, and for sufficiently small
characters (depending on device resolution)
there may be little visual difference.
lMatch Matched-font identity.
szFacename[ FACESIZE ] Typeface name. The typeface name of the font, for example, Tms Rmn.
idRegistry Registry identifier.
Font registry identifier (zero if unknown).
usCodePage Code page.
If zero, the current Gpi code page (see GpiSetCp in
Graphics Programming Interface) is used. A subsequent
GpiSetCp function changes the code page used for this
logical font.
lMaxBaselineExt Maximum baseline extension.
For raster fonts, this should be the height of the
required font, in world coordinates.
For outline fonts, this should be zero.
lAveCharWidth Average character width.
For raster fonts, this should be the width of the required
font, in world coordinates.
For outline fonts, this should be zero.
fsType Type indicators.
FATTR_TYPE_KERNING Enable kerning (PostScript only).
FATTR_TYPE_MBCS Font for mixed single- and
double-byte code pages.
FATTR_TYPE_DBCS Font for double-byte code pages.
FATTR_TYPE_ANTIALIASED Antialiased font required. Only
valid if supported by the device
driver.
fsFontUse Font-use indicators.
These flags indicate how the font is to be used. They
affect presentation speed and font quality.
FATTR_FONTUSE_NOMIX
Text is not mixed with graphics and can be written without
regard to any interaction with graphics objects.
FATTR_FONTUSE_OUTLINE
Select an outline (vector) font. The font characters can
be used as part of a path definition. If this flag
is not set, an outline font might or might not be
selected. If an outline font is selected, however,
character widths are rounded to an integral number of
pels.
FATTR_FONTUSE_TRANSFORMABLE
Characters can be transformed (for example, scaled,
rotated, or sheared).