字体使用的字符集
所有字体都使用字符集。 字符集包含标点符号、数字、大写字母和小写字母以及所有其他可打印字符。 字符集的每个元素都由一个数字标识。
使用的大多数字符集都是美国 ASCII 字符集的超集,用于定义 32 到 127 的 96 个数值的字符。 有五个主要的字符集组:
- 窗户
- Unicode
- OEM (原始设备制造商)
- 象征
- 特定于供应商
Windows 字符集
Windows 字符集是最常用的字符集。 它实质上等效于 ANSI 字符集。 空白字符是 Windows 字符集中的第一个字符。 它具有十六进制值0x20(十进制 32)。 Windows 字符集中的最后一个字符具有十六进制值0xFF(十进制 255)。
许多字体指定默认字符。 每当对不在字体中的字符发出请求时,系统都提供此默认字符。 使用 Windows 字符集的许多字体将句点 (.) 指定为默认字符。 TrueType 和 OpenType 字体通常使用打开框作为默认字符。
字体使用一个名为四边形的断字符分隔单词和对齐文本。 使用 Windows 字符集的大多数字体都指定空白字符将用作断字符。
Unicode 字符集
Windows 字符集使用 8 位来表示每个字符;因此,可以使用 8 位表示的最大字符数为 256 (2^8)。 这通常足以用于西方语言,包括法语、德语、西班牙语和其他语言中使用的音调标记。 但是,东部语言采用数千个单独的字符,不能使用单字节编码方案进行编码。 随着计算机商业的激增,开发了双字节编码方案,以便在 8 位、16 位、24 位或 32 位序列中表示字符。 这需要复杂的传递算法;即便如此,使用不同的代码集可能会在两台不同的计算机上产生完全不同的结果。
为了解决多个编码方案的问题,开发了数据表示形式的 Unicode 标准。 16 位字符编码方案,Unicode 可以表示 65,536 (2^16) 个字符,这足以包括当今计算机商业中的所有语言,以及标点符号、数学符号和扩展空间。 Unicode 为每个字符建立唯一的代码,以确保字符翻译始终准确。
OEM 字符集
OEM 字符集通常用于全屏 MS-DOS 会话中的屏幕显示。 字符 32 到 127 在 OEM、美国 ASCII 和 Windows 字符集中通常相同。 OEM 字符集中的其他字符(0 到 31 和 128 到 255)对应于可在全屏 MS-DOS 会话中显示的字符。 这些字符通常不同于 Windows 字符。
符号字符集
符号字符集包含通常用于表示数学公式和科学公式的特殊字符。
特定于供应商的字符集
许多打印机和其他输出设备根据不同于 Windows 和 OEM 集的字符集(例如扩展二进制编码十进制交换代码(EBCDIC)字符集提供字体。 若要使用这些字符集之一,打印机驱动程序将从 Windows 字符集转换为特定于供应商的字符集。