Font-metrics structure

This structure is returned to applications on the GpiQueryFonts and GpiQueryFontMetrics calls and conveys information from the font creator to the application.

typedef struct _FONTMETRICS { CHAR    szFamilyname[FACESIZE];  /*  Family name. */ CHAR    szFacename[FACESIZE];    /*  Face name. */ USHORT  idRegistry;              /*  Registry identifier. */ USHORT  usCodePage;              /*  Code page. */ LONG    lEmHeight;               /*  Em height. */ LONG    lXHeight;                /*  X height. */ LONG    lMaxAscender;            /*  Maximum ascender. */ LONG    lMaxDescender;           /*  Maximum descender. */ LONG    lLowerCaseAscent;        /*  Lowercase ascent. */ LONG    lLowerCaseDescent;       /*  Lowercase descent. */ LONG    lInternalLeading;        /*  Internal leading. */ LONG    lExternalLeading;        /*  External leading. */ LONG    lAveCharWidth;           /*  Average character width. */ LONG    lMaxCharInc;             /*  Maximum character increment. */ LONG    lEmInc;                  /*  Em increment. */ LONG    lMaxBaselineExt;         /*  Maximum baseline extent. */ SHORT   sCharSlope;              /*  Character slope. */ SHORT   sInlineDir;              /*  Inline direction. */ SHORT   sCharRot;                /*  Character rotation. */ USHORT  usWeightClass;           /*  Weight class. */ USHORT  usWidthClass;            /*  Width class. */ SHORT   sXDeviceRes;             /*  X-device resolution. */ SHORT   sYDeviceRes;             /*  Y-device resolution. */ SHORT   sFirstChar;              /*  First character. */ SHORT   sLastChar;               /*  Last character. */ SHORT   sDefaultChar;            /*  Default character. */ SHORT   sBreakChar;              /*  Break character. */ SHORT   sNominalPointSize;       /*  Nominal point size. */ SHORT   sMinimumPointSize;       /*  Minimum point size. */ SHORT   sMaximumPointSize;       /*  Maximum point size. */ USHORT  fsType;                  /*  Type indicators. */ USHORT  fsDefn;                  /*  Definition indicators. */ USHORT  fsSelection;             /*  Selection indicators. */ USHORT  fsCapabilities;          /*  Font capabilities. */ LONG    lSubscriptXSize;         /*  Subscript x-size. */ LONG    lSubscriptYSize;         /*  Subscript y-size. */ LONG    lSubscriptXOffset;       /*  Subscript x-offset. */ LONG    lSubscriptYOffset;       /*  Subscript y-offset. */ LONG    lSuperscriptXSize;       /*  Superscript x-size. */ LONG    lSuperscriptYSize;       /*  Superscript y-size. */ LONG    lSuperscriptXOffset;     /*  Superscript x-offset. */ LONG    lSuperscriptYOffset;     /*  Superscript y-offset. */ LONG    lUnderscoreSize;         /*  Underscore size. */ LONG    lUnderscorePosition;     /*  Underscore position. */ LONG    lStrikeoutSize;          /*  Strikeout size. */ LONG    lStrikeoutPosition;      /*  Strikeout position. */ SHORT   sKerningPairs;           /*  Kerning pairs. */ SHORT   sFamilyClass;            /*  Font family design classification. */ LONG    lMatch;                  /*  Matched font identity. */ LONG    FamilyNameAtom;          /*  Font family name atom. */ LONG    FaceNameAtom;            /*  Font facename atom. */ PANOSE  panose;                  /*  Panose font descriptor. */ } FONTMETRICS; typedef FONTMETRICS *PFONTMETRICS;

Font-attributes structure.

typedef struct _FATTRS { USHORT  usRecordLength;        /*  Length of record. */ USHORT  fsSelection;           /*  Selection indicators. */ LONG    lMatch;                /*  Matched-font identity. */ CHAR    szFacename[FACESIZE];  /*  Typeface name. */ USHORT  idRegistry;            /*  Registry identifier. */ USHORT  usCodePage;            /*  Code page. */ LONG    lMaxBaselineExt;       /*  Maximum baseline extension. */ LONG    lAveCharWidth;         /*  Average character width. */ USHORT  fsType;                /*  Type indicators. */ USHORT  fsFontUse;             /*  Font-use indicators. */ } FATTRS; typedef FATTRS *PFATTRS;

The following table lists the full character set in the order in which the characters occur in the multi-code-page font. Characters are listed in order of their universal glyph list (UGL) number; the graphic character global identifier (GCGID) and a description of each character are also given.

?GL ?CGID     Description

?   ?S000000  ?miling face ?   ?S010000  ?miling face, reverse image ?   ?S020000  ?eart suit symbol ?   ?S030000  ?iamond suit symbol ?   ?S040000  ?lub suit symbol ?   ?S050000  ?pade suit symbol ?   ?M570000  ?ullet ?   ?M570001  ?ullet, reverse image ?   ?M750000  ?pen circle                             ? ?0  ?M750002  ?pen circle, reverse image              ? ?1  ?M280000  ?ale symbol                             ? ?2  ?M290000  ?emale symbol                           ? ?3  ?M930000  ?usical note                            ? ?4  ?M910000  ?wo musical notes                       ? ?5  ?M690000  ?un symbol                              ? ?6  ?M590000  ?orward arrow indicator                 ? ?7  ?M630000  ?ack arrow indicator                    ? ?8  ?M760000  ?p-down arrow                           ? ?9  ?P330000  ?ouble exclamation point                ? ?0  ?M250000  ?aragraph symbol (USA)                  ? ?1  ?M240000  ?ection symbol (USA), paragraph (Europe)? ?2  ?M700000  ?olid horizontal rectangle              ? ?3  ?M770000  ?p-down arrow, perpendicular            ? ?4  ?M320000  ?p arrow                                ? ?5  ?M330000  ?own arrow                              ? ?6  ?M310000  ?ight arrow                             ? ?7  ?M300000  ?eft arrow                              ? ?8  ?A420000  ?ight angle symbol                      ? ?9  ?M780000  ?eft-right arrow                        ? ?0  ?M600000  ?olid triangle                          ? ?1  ?V040000  ?olid triangle, inverted                ? ?2  ?P010000  ?pace                                   ? ?3  ?P020000  ?xclamation point                       ? ?4  ?P040000  ?uotation marks                         ? ?5  ?M010000  ?umber sign                             ? ?6  ?C030000  ?ollar sign                             ? ?7  ?M020000  ?ercent sign                            ? ?8  ?M030000  ?mpersand                               ? ?9  ?P050000  ?postrophe                              ? ?0  ?P060000  ?eft parenthesis                        ? ?1  ?P070000  ?ight parenthesis                       ? ?2  ?M040000  ?sterisk                                ? ?3  ?A010000  ?lus sign                               ? ?4  ?P080000  ?omma                                   ? ?5  ?P100000  ?yphen/minus sign                       ? ?6  ?P110000  ?eriod/full stop                        ? ?7  ?P120000  ?lash                                   ? ?8  ?D100000  ?ero                                    ? ?9  ?D010000  ?ne                                     ? ?0  ?D020000  ?wo                                     ? ?1  ?D030000  ?hree                                   ? ?2  ?D040000  ?our                                    ? ?3  ?D050000  ?ive                                    ? ?4  ?D060000  ?ix                                     ? ?5  ?D070000  ?even                                   ? ?6  ?D080000  ?ight                                   ? ?7  ?D090000  ?ine                                    ? ?8  ?P130000  ?olon                                   ? ?9  ?P140000  ?emicolon                               ? ?0  ?A030000  ?ess than sign/greater than (arabic)    ? ?1  ?A040000  ?qual Sign                              ? ?2  ?A050000  ?reater than sign/less than (arabic)    ? ?3  ?P150000  ?uestion mark                           ? ?4  ?M050000  ?t sign                                 ? ?5  ?A020000  ? capital                              ? ?6  ?B020000  ? capital                              ? ?7  ?C020000  ? capital                              ? ?8  ?D020000  ? capital                              ? ?9  ?E020000  ? capital                              ? ?0  ?F020000  ? capital                              ? ?1  ?G020000  ? capital                              ? ?2  ?H020000  ? capital                              ? ?3  ?I020000  ? capital                              ? ?4  ?J020000  ? capital                              ? ?5  ?K020000  ? capital                              ? ?6  ?L020000  ? capital                              ? ?7  ?M020000  ? capital                              ? ?8  ?N020000  ? capital                              ? ?9  ?O020000  ? capital                              ? ?0  ?P020000  ? capital                              ? ?1  ?Q020000  ? capital                              ? ?2  ?R020000  ? capital                              ? ?3  ?S020000  ? capital                              ? ?4  ?T020000  ? capital                              ? ?5  ?U020000  ? capital                              ? ?6  ?V020000  ? capital                              ? ?7  ?W020000  ? capital                              ? ?8  ?X020000  ? capital                              ? ?9  ?Y020000  ? capital                              ? ?0  ?Z020000  ? capital                              ? ?1  ?M060000  ?eft bracket                            ? ?2  ?M070000  ?ackslash                               ? ?3  ?M080000  ?ight bracket                           ? ?4  ?D150000  ?ircumflex Accent                       ? ?5  ?P090000  ?nderline, continuous underscore        ? ?6  ?D130000  ?rave accent                            ? ?7  ?A010000  ? small                                ? ?8  ?B010000  ? small                                ? ?9  ?C010000  ? small                                ? ?00 ?D010000  ? small                                ? ?01 ?E010000  ? small                                ? ?02 ?F010000  ? small                                ? ?03 ?G010000  ? small                                ? ?04 ?H010000  ? small                                ? ?05 ?I010000  ? small                                ? ?06 ?J010000  ? small                                ? ?07 ?K010000  ? small                                ? ?08 ?L010000  ? small                                ? ?09 ?M010000  ? small                                ? ?10 ?N010000  ? small                                ? ?11 ?O010000  ? small                                ? ?12 ?P010000  ? small                                ? ?13 ?Q010000  ? small                                ? ?14 ?R010000  ? small                                ? ?15 ?S010000  ? small                                ? ?16 ?T010000  ? small                                ? ?17 ?U010000  ? small                                ? ?18 ?V010000  ? small                                ? ?19 ?W010000  ? small                                ? ?20 ?X010000  ? small                                ? ?21 ?Y010000  ? small                                ? ?22 ?Z010000  ? small                                ? ?23 ?M110000  ?eft brace                              ? ?24 ?M130000  ?ertical line, logical OR               ? ?25 ?M140000  ?ight brace                             ? ?26 ?D190000  ?ilde                                   ? ?27 ?M790000  ?ouse                                   ? ?28 ?C420000  ? cedilla capital                      ? ?29 ?U170000  ? diaeresis small                      ? ?30 ?E110000  ? acute small                          ? ?31 ?A150000  ? circumflex small                     ? ?32 ?A170000  ? diaeresis small                      ? ?33 ?A130000  ? grave small                          ? ?34 ?A270000  ? overcircle small                     ? ?35 ?C410000  ? cedilla small                        ? ?36 ?E150000  ? circumflex small                     ? ?37 ?E170000  ? diaeresis small                      ? ?38 ?E130000  ? grave small                          ? ?39 ?I170000  ? diaeresis small                      ? ?40 ?I150000  ? circumflex small                     ? ?41 ?I130000  ? grave small                          ? ?42 ?A180000  ? diaeresis capital                    ? ?43 ?A280000  ? overcircle capital                   ? ?44 ?E120000  ? acute capital                        ? ?45 ?A510000  ?E diphthong small                      ? ?46 ?A520000  ?E diphthong capital                    ? ?47 ?O150000  ? circumflex small                     ? ?48 ?O170000  ? diaeresis small                      ? ?49 ?O130000  ? grave small                          ? ?50 ?U150000  ? circumflex small                     ? ?51 ?U130000  ? grave small                          ? ?52 ?Y170000  ? diaeresis small                      ? ?53 ?O180000  ? diaeresis capital                    ? ?54 ?U180000  ? diaeresis capital                    ? ?55 ?O610000  ? slash small                          ? ?56 ?C020000  ?ound sterling sign                     ? ?57 ?O620000  ? slash capital                        ? ?58 ?A070000  ?ultiply sign                           ? ?59 ?C070000  ?lorin sign                             ? ?60 ?A110000  ? acute small                          ? ?61 ?I110000  ? acute small                          ? ?62 ?O110000  ? acute small                          ? ?63 ?U110000  ? acute small                          ? ?64 ?N190000  ? tilde small                          ? ?65 ?N200000  ? tilde capital                        ? ?66 ?M210000  ?rdinal indicator, feminine             ? ?67 ?M200000  ?rdinal indicator, masculine            ? ?68 ?P160000  ?uestion mark, inverted                 ? ?69 ?M530000  ?egistered trademark symbol             ? ?70 ?M660000  ?ogical NOT, end of line symbol         ? ?71 ?F010000  ?ne-half                                ? ?72 ?F040000  ?ne-quarter                             ? ?73 ?P030000  ?xclamation point, inverted             ? ?74 ?P170000  ?eft angled quotes                      ? ?75 ?P180000  ?ight angled quotes                     ? ?76 ?F140000  ?ill character, light                   ? ?77 ?F150000  ?ill character, medium                  ? ?78 ?F160000  ?ill character, heavy                   ? ?79 ?F110000  ?enter box bar vertical                 ? ?80 ?F090000  ?ight middle box side                   ? ?81 ?A120000  ? acute capital                        ? ?82 ?A160000  ? circumflex capital                   ? ?83 ?A140000  ? grave capital                        ? ?84 ?M520000  ?opyright symbol                        ? ?85 ?F230000  ?ight box side double                   ? ?86 ?F240000  ?enter box bar vertical double          ? ?87 ?F250000  ?pper right box corner double           ? ?88 ?F260000  ?ower right box corner double           ? ?89 ?C040000  ?ent sign                               ? ?90 ?C050000  ?en sign                                ? ?91 ?F030000  ?pper right box corner                  ? ?92 ?F020000  ?ower left box corner                   ? ?93 ?F070000  ?iddle box bottom                       ? ?94 ?F060000  ?iddle box top                          ? ?95 ?F080000  ?eft middle box side                    ? ?96 ?F100000  ?enter box bar horizontal               ? ?97 ?F050000  ?ox intersection                        ? ?98 ?A190000  ? tilde small                          ? ?99 ?A200000  ? tilde capital                        ? ?00 ?F380000  ?ower left box corner double            ? ?01 ?F390000  ?pper left box corner double            ? ?02 ?F400000  ?iddle box bottom double                ? ?03 ?F410000  ?iddle box top double                   ? ?04 ?F420000  ?eft box side double                    ? ?05 ?F430000  ?enter box bar horizontal double        ? ?06 ?F440000  ?ox intersection double                 ? ?07 ?C010000  ?nternational currency symbol           ? ?08 ?D630000  ?th Icelandic small                     ? ?09 ?D620000  ? stroke capital, Eth Icelandic capital ? ?10 ?E160000  ? circumflex capital                   ? ?11 ?E180000  ? diaeresis capital                    ? ?12 ?E140000  ? grave capital                        ? ?13 ?I610000  ? dotless small                        ? ?14 ?I120000  ? acute capital                        ? ?15 ?I160000  ? circumflex capital                   ? ?16 ?I180000  ? diaeresis capital                    ? ?17 ?F040000  ?ower right box corner                  ? ?18 ?F010000  ?pper left box corner                   ? ?19 ?F610000  ?olid fill character                    ? ?20 ?F570000  ?olid fill character, bottom half       ? ?21 ?M650000  ?ertical line, broken                   ? ?22 ?I140000  ? grave capital                        ? ?23 ?F600000  ?olid fill character, top half          ? ?24 ?O120000  ? acute capital                        ? ?25 ?S610000  ?harp s small                           ? ?26 ?O160000  ? circumflex capital                   ? ?27 ?O140000  ? grave capital                        ? ?28 ?O190000  ? tilde small                          ? ?29 ?O200000  ? tilde capital                        ? ?30 ?M170000  ?icro symbol                            ? ?31 ?T630000  ?horn Icelandic small                   ? ?32 ?T640000  ?horn Icelandic capital                 ? ?33 ?U120000  ? acute capital                        ? ?34 ?U160000  ? circumflex capital                   ? ?35 ?U140000  ? grave capital                        ? ?36 ?Y110000  ? acute small                          ? ?37 ?Y120000  ? acute capital                        ? ?38 ?M150000  ?verline                                ? ?39 ?D110000  ?cute accent                            ? ?40 ?P320000  ?yllable hyphen                         ? ?41 ?A020000  ?lus or minus sign                      ? ?42 ?M100000  ?ouble underscore                       ? ?43 ?F050000  ?hree-quarters                          ? ?44 ?M250000  ?aragraph symbol (USA)                  ? ?45 ?M240000  ?ection symbol (USA), paragraph (Europe)? ?46 ?A060000  ?ivide sign                             ? ?47 ?D410000  ?edilla (or sedila) accent              ? ?48 ?M190000  ?egree symbol                           ? ?49 ?D170000  ?iaeresis, umlaut accent                ? ?50 ?D630000  ?iddle dot                              ? ?51 ?D011000  ?ne superscript                         ? ?52 ?D031000  ?hree superscript                       ? ?53 ?D021000  ?wo superscript                         ? ?54 ?M470000  ?olid square, histogram, square bullet  ? ?55 ?P300000  ?equired space                          ? ?56 ?C060000  ?eseta sign                             ? ?57 ?M680000  ?tart of line symbol                    ? ?58 ?F190000  ?ight box side double to single         ? ?59 ?F200000  ?ight box side single to double         ? ?60 ?F210000  ?pper right box corner single to double ? ?61 ?F220000  ?pper right box corner double to single ? ?62 ?F270000  ?ower right box corner single to double ? ?63 ?F280000  ?ower right box corner double to single ? ?64 ?F360000  ?eft box side single to double          ? ?65 ?F370000  ?eft box side double to single          ? ?66 ?F450000  ?iddle box bottom single to double      ? ?67 ?F460000  ?iddle box bottom double to single      ? ?68 ?F470000  ?iddle box top double to single         ? ?69 ?F480000  ?iddle box top single to double         ? ?70 ?F490000  ?ower left box corner double to single  ? ?71 ?F500000  ?ower left box corner single to double  ? ?72 ?F510000  ?pper left box corner single to double  ? ?73 ?F520000  ?pper left box corner double to single  ? ?74 ?F530000  ?ox intersection single to double       ? ?75 ?F540000  ?ox intersection double to single       ? ?76 ?F580000  ?olid fill character, left half         ? ?77 ?F590000  ?olid fill character, right half        ? ?78 ?A010000  ?lpha small                             ? ?79 ?G020000  ?amma capital                           ? ?80 ?P010000  ?i small                                ? ?81 ?S020000  ?igma capital                           ? ?82 ?S010000  ?igma small                             ? ?83 ?T010000  ?au small                               ? ?84 ?F020000  ?hi capital                             ? ?85 ?T620000  ?heta capital                           ? ?86 ?O320000  ?mega capital                           ? ?87 ?D010000  ?elta small                             ? ?88 ?A450000  ?nfinity symbol                         ? ?89 ?F010000  ?hi small                               ? ?90 ?E010000  ?psilon small                           ? ?91 ?A380000  ?ntersection, logical product           ? ?92 ?A480000  ?ndentity symbol, almost equal          ? ?93 ?A530000  ?reater than or equal sign              ? ?94 ?A520000  ?ess than or equal sign                 ? ?95 ?S260000  ?pper integral symbol section           ? ?96 ?S270000  ?ower integral symbol section           ? ?97 ?A700000  ?early equals symbol                    ? ?98 ?A790000  ?roduct dot                             ? ?99 ?A800000  ?adical symbol                          ? ?00 ?N011000  ? small superscript                    ? ?01 ?D310000  ?acron accent                           ? ?02 ?D230000  ?reve accent                            ? ?03 ?D290000  ?verdot accent (over small Alpha)       ? ?04 ?D270000  ?vercircle accent                       ? ?05 ?D250000  ?ouble acute accent                     ? ?06 ?D430000  ?gonek accent                           ? ?07 ?D210000  ?aron accent                            ? ?08 ?P190000  ?eft single quote                       ? ?09 ?P200000  ?ight single quote                      ? ?10 ?P210000  ?eft double quotes                      ? ?11 ?P220000  ?ight double quotes                     ? ?12 ?S680000  ?ndash                                  ? ?13 ?M900000  ?mdash                                  ? ?14 ?D150000  ?ircumflex accent                       ? ?15 ?D190000  ?ilde accent                            ? ?16 ?P260000  ?ingle quote on baseline (German lower) ? ?17 ?P230000  ?eft lower double quotes                ? ?18 ?V520000  ?llipsis                                ? ?19 ?M340000  ?agger footnote indicator               ? ?20 ?M350000  ?ouble dagger footnote indicator        ? ?21 ?D150100  ?ircumflex accent (over small alpha)    ? ?22 ?M560000  ?ermille symbol                         ? ?23 ?S220000  ? caron capital                        ? ?24 ?P270000  ?rench single open quote                ? ?25 ?O520000  ?E ligature capital                     ? ?26 ?D190100  ?ilde accent (over small alpha)         ? ?27 ?M540000  ?rademark symbol                        ? ?28 ?S210000  ? caron small                          ? ?29 ?P280000  ?rench single close quote               ? ?30 ?O510000  ?e ligature small                       ? ?31 ?Y180000  ? diaeresis capital                    ? ?32 ?G230000  ? Breve Small                          ? ?33 ?G240000  ? Breve Capital                        ? ?34 ?I300000  ? Overdot Capital                      ? ?35 ?S410000  ? Cedilla Small                        ? ?36 ?S420000  ? Cedilla Capital                      ? ?37 ?A230000  ? Breve Small                          ? ?38 ?A240000  ? Breve Capital                        ? ?39 ?A430000  ? Ogonek Small                         ? ?40 ?A440000  ? Ogonek Capital                       ? ?41 ?C110000  ? Acute Small                          ? ?42 ?C120000  ? Acute Capital                        ? ?43 ?C210000  ? Caron Small                          ? ?44 ?C220000  ? Caron Capital                        ? ?45 ?D210000  ? Caron Small                          ? ?46 ?D220000  ? Caron Capital                        ? ?47 ?D610000  ? Stroke Small                         ? ?48 ?E210000  ? Caron Small                          ? ?49 ?E220000  ? Caron Capital                        ? ?50 ?E430000  ? Ogenek Small                         ? ?51 ?E440000  ? Ogonek Capital                       ? ?52 ?L110000  ? Acute Small                          ? ?53 ?L120000  ? Acute Capital                        ? ?54 ?L210000  ? Caron Small                          ? ?55 ?L220000  ? Caron Capital                        ? ?56 ?L610000  ? Stroke Small                         ? ?57 ?L620000  ? Stroke Capital                       ? ?58 ?N110000  ? Acute Small                          ? ?59 ?N120000  ? Acute Capital                        ? ?60 ?N210000  ? Caron Small                          ? ?61 ?N220000  ? Caron Capital                        ? ?62 ?O250000  ? Double Acute Small                   ? ?63 ?O260000  ? Double Acute Capital                 ? ?64 ?R110000  ? Acute Small                          ? ?65 ?R120000  ? Acute Capital                        ? ?66 ?R210000  ? Caron Small                          ? ?67 ?R220000  ? Caron Capital                        ? ?68 ?S110000  ? Acute Small                          ? ?69 ?S120000  ? Acute Capital                        ? ?70 ?T210000  ? Caron Small                          ? ?71 ?T220000  ? Caron Capital                        ? ?72 ?T410000  ? Cedilla Small                        ? ?73 ?T420000  ? Cedilla Capital                      ? ?74 ?U250000  ? Double Acute Small                   ? ?75 ?U260000  ? Double Acute Capital                 ? ?76 ?U270000  ? Overcircle Small                     ? ?77 ?U280000  ? Overcircle Capital                   ? ?78 ?Z110000  ? Acute Small                          ? ?79 ?Z120000  ? Acute Capital                        ? ?80 ?Z210000  ? Caron Small                          ? ?81 ?Z220000  ? Caron Capital                        ? ?82 ?Z290000  ? Overdot Small                        ? ?83 ?Z300000  ? Overdot Capital                      ? OS/2* outline fonts and Presentation Manager* bit map fonts are supplied by the operating system.

OS/2 Outline Fonts
The following Adobe** Type 1 fonts are supplied with OS/2: The Courier, Tms Rmn, and Swiss family fonts that were supplied with OS/2 release 1.1 and 1.2 are no longer supplied. Using one of the old names results in one of the new fonts listed above being used, as follows: Old Family/Face Name    Font Used. Roman/Tms Rmn           Times New Roman Swiss/Helv              Helvetica These fonts are provided in an efficient binary format for use by the OS/2 Adobe Type Manager. They are also provided in standard Type 1 format (PFB and AFM) for use with the OS/2 PostScript* printer device driver.

Presentation Manager Bit Map Fonts
The following tables list all system bit map fonts available using the Graphics Programming Interface. The first table applies to hardware that does not conform to the International Standards Organization (ISO) 9241. (See International Standards Organization (ISO) 9241 for more information on ISO 9241.) The second table lists the fonts supplied with OS/2 for IBM hardware that does conform to ISO 9241.

During system installation, the operating system determines the type of display adapter available on your computer and installs only the fonts which match the device resolution. Since additional device bit map fonts may be available on specific devices, you may have to install the correct bit map fonts if you change your display device after the operating system is installed.

Fonts Supplied for ISO 9241 Non-Conforming Hardware

The following information for each font is included in the table:
 * Points:This is the point size of the font, on a device whose resolution matches that of the font, (see "Device" below).
 * Ave Wid:This is the average width in pels of alphabetic characters weighted according to US English letter frequencies.
 * Max Wid:This is the maximum width in pels of all characters in the font. This field is not necessarily the maximum width of any character in the code page. It could be used to ensure that the horizontal space allocated on a display or printer is big enough to handle any character.
 * Height:This is the height in pels of the font. This is the minimum number of rows of pels needed to output any character of the font on a given baseline. This field may be larger than necessary for a given code page. It could be used to ensure that the vertical space allocated on a display or printer is big enough to handle any character.
 * Device:This is the X and Y resolution in pels per inch at which the font is intended to be used. Only those fonts which match the device resolution of the installed display driver are available on the system. If the installed display is changed, the install process will reinstall the proper font sets for the new adapter. The IBM devices whose device drivers report these resolutions are:
 * 96 x 48  CGA
 * 96 x 72  EGA
 * 96 x 96  VGA and XGA (in 640 x 480 mode)
 * 120 x 120 8514/A and XGA (in 1024 x 768 mode)

Note: These values are approximate representations of the actual resolution, which in the case of displays depends on which monitor is attached. Consequently the point size of characters on the screen is also approximate. The following table applies to hardware that does not conform to ISO 9241.

Fonts Supplied for ISO 9241 Conforming Hardware
The following table lists the fonts and sizes that have been tested and certified as passing the ISO 9241 black text on white background criteria for the three IBM displays that conform to the standard. These displays are: See International Standards Organization (ISO) 9241 for information on ISO 9241.
 * 9515 - A 14 inch XGA display.
 * 9517 - A 17 inch XGA display.
 * 9518 - A 14 inch VGA display.

The following information about each font is also included in the table: P       The point size of the font. AW      The average character width in pels in the font. MW      The maximum character width in pels in the font. HE      The height in pels of the font (maximum baseline extent). Device  The X and Y resolution in pels per inch on the device the font is intended to be used. The IBM devices whose device drivers report these resolutions are:

96 x 96        VGA and XGA (in 640 x 480 mode) 120 x 120      XGA (in 1024 x 768 mode)

?amily ?ace Nam? AW MW  HE  ?evice   ?515  9517  9518 ? ?ame   ? ?              ?        ?                ?  ?ourier ?ourier ?8   8   8  13  ?96   96 ?o    No    No   ? ?      ?SO     ?8  10  10  16  ?20  120 ?o    No    n/a  ? ?      ?       ?9   8   8  15  ?96   96 ?es   Yes   Yes  ? ?      ?       ?0  10  10  16  ?96   96 ?es   Yes   Yes  ? ?      ?       ?0  12  12  20  ?20  120 ?o    No    n/a  ? ?      ?       ?2  12  12  20  ?96   96 ?es   Yes   Yes  ? ?      ?       ?2  15  15  25  ?20  120 ?es   Yes   n/a  ? ?elv   ?elv ISO?8   5  13  13  ?96   96 ?o    No    No   ? ?      ?       ?8   7  14  16  ?20  120 ?o    No    n/a  ? ?      ?       ?9   6  13  15  ?96   96 ?es   Yes   Yes  ? ?      ?       ?9   8  20  21  ?20  120 ?es   Yes   n/a  ? ?      ?       ?0   7  14  16  ?96   96 ?es   Yes   Yes  ? ?      ?       ?0   9  20  21  ?20  120 ?es   Yes   n/a  ? ?      ?       ?2   9  17  20  ?96   96 ?es   Yes   Yes  ? ?      ?       ?2  10  21  25  ?20  120 ?es   Yes   n/a  ? ?      ?       ?4  10  21  24  ?96   96 ?es   Yes   Yes  ? ?      ?       ?4  12  26  29  ?20  120 ?es   Yes   n/a  ? ?      ?       ?8  12  26  29  ?96   96 ?es   Yes   Yes  ? ?      ?       ?8  15  34  36  ?20  120 ?es   Yes   n/a  ? ?      ?       ?4  14  34  36  ?96   96 ?es   Yes   Yes  ? ?      ?       ?4  19  45  46  ?20  120 ?es   Yes   n/a  ? ?ms Rmn ?ms Rmn ?8  5  12  13  ?96   96 ?o    No    No   ? ?      ?SO     ?8   7  15  16  ?20  120 ?o    No    n/a  ? ?      ?       ?9   6  12  15  ?96   96 ?es   Yes   Yes  ? ?      ?       ?0   7  14  16  ?96   96 ?es   Yes   Yes  ? ?      ?       ?0   8  17  19  ?20  120 ?o    Yes   n/a  ? ?      ?       ?2   8  16  19  ?96   96 ?es   Yes   Yes  ? ?      ?       ?2  10  23  22  ?20  120 ?es   Yes   n/a  ? ?      ?       ?4   9  23  22  ?96   96 ?es   Yes   Yes  ? ?      ?       ?4  11  26  27  ?20  120 ?es   Yes   n/a  ? ?      ?       ?8  11  26  27  ?96   96 ?es   Yes   Yes  ? ?      ?       ?8  14  34  34  ?20  120 ?es   Yes   n/a  ? ?      ?       ?4  14  34  34  ?96   96 ?es   Yes   Yes  ? ?      ?       ?4  17  46  43  ?20  120 ?es   Yes   n/a  ? ?ystem ?ystem  ?9   6  13  15  ?96   96 ?es   Yes   Yes  ? ?ropor- ?ropor- ?0  6  20  16  ?96   96 ?es   Yes   Yes  ? ?ional ?ional  ?0   8  23  20  ?20  120 ?o    Yes   n/a  ? ?      ?       ?2  10  23  22  ?20  120 ?es   Yes   n/a  ? ?ystem ?ystem  ?0   8   8  16  ?96   96 ?es   Yes   Yes  ? ?ono-  ?ono-   ?0  10  10  21  ?20  120 ?es   Yes   n/a  ? ?paced ?paced  ? ?       ?                ?

See International Standards Organization (ISO) 9241 for more information on ISO 9241.

Many of the characters required by each code page are common; for example, the first 128 characters of all the ASCII code pages are identical. This set of characters is called the Universal Glyph List (UGL). A code page is simply a set of pointers into the UGL.

As the characters in every font are in the same order, only one set of code-page translation tables is necessary.


 * Note: The fonts of Microsoft Windows support only code page 1004.

ISO 9241 is an international standard covering health and safety in the work place for users of visual display terminals. Part 3 of this standard covers clarity and legibility of text displayed on computer screens; it places requirements on minimum sizes and luminance contrast.

The presence of the FM_SEL_ISO9241_TESTED flag in the FONTMETRICS structure indicates that the font has been tested for ISO compliance.

Note: While the fonts were primarily tested for meeting the ISO standard, they have also been designed to meet the German standard DIN 66 234. Where the two standards differ, the fonts have been designed to meet the stricter requirement.

The FM_ISO_xxx flags indicate the results of the test on the three IBM* displays that conform to the standard. These are the IBM 9515, 9517, and 9518 color displays at the supported resolutions of 640 x 480 and 1024 x 768. To determine whether a non-IBM display complies with ISO 9241, contact the manufacturer. The current display type can be established using VioGetConfig.

In order for applications to meet the standard, they have to ensure that they use only fonts that have been tested and passed. You can determine this by examining the new FM_SEL_ISO9241_TESTED flag in the fsSelection parameter in the FONTMETRICS structure, the FM_ISO_xxx flags and the sXDeviceRes and sYDeviceRes fields in the structure.

See Fonts Supplied with the OS/2 Operating System for the table describing ISO 9241 compliant fonts.