INF: Stroke Fonts Marked as OEM Character Set Are ANSI

ID Number: Q72020

3.00

WINDOWS

Summary:

There are three stroke fonts packaged with Windows version 3.00:

Roman, Script, and Modern. These fonts are marked as belonging to the

OEM character set when, in fact, they belong to the ANSI character

set.

The OEM character set is the character set used by the hardware device

on which Windows is running (for example, the IBM PC). The IBM PC OEM

character set is listed on page D-1 of the "Microsoft Windows Software

Development Kit Reference Volume 2." The ANSI character set is listed

on page D-2 of that volume.

The fonts were marked in this manner for two reasons. First, in

previous versions of Windows, the stroke fonts did include non-ANSI

characters. Second, mismarking the character set ensures proper font

mapping. The character-set attribute of a font is assigned a very high

penalty weight in the font mapping scheme. If stroke fonts were not

marked as using the OEM character set, a stroke font might be chosen

by the font mapper [during a SelectObject() call] instead of a raster

font when a requested raster font size is not available. This behavior

occurs because most raster fonts belong to the ANSI character set,

character size has much lower penalty weight than character set, and

stroke fonts can be scaled to any desired size. Some raster fonts can

be scaled; however, they can be scaled only to specific sizes.