In this section background information is given on fonts and the IBM AFP font structure.
A font is a set of printable or displayable text characters sharing the same type family, typeface, and type size.
Consider the following example:
‘Helvetica 10-point roman medium normal Latin1’, where:
Helvetica |
Type family |
A group of typeface that share design characteristics and include many size and style variations. For example: Courier, Times. |
---|---|---|
10-point |
Font size |
The size of the characters in points. |
Typeface |
A collection of characters having the same style, weight, and width. |
|
roman |
Style |
The inclination of a letter around a vertical axis. For example, roman (upright), italic (slanted). |
medium |
Weight |
The degree of boldness. For example: medium, bold. |
normal |
Width |
The horizontal variation in the character design. For example: normal, condensed. |
Latin 1 |
Complement |
A collection of characters for Expanded Core Fonts. For example: Latin 235, Cyrillic Greek. |
In practise, the concepts of font and type family are often used without much precision, sometimes interchangeably.
Fonts can be divided in the following main representation groups:
Bitmap fonts
A bitmap font is a digital representation of a font that is already fixed in size or a limited set of sizes.
Outline fonts
An outline font is a software typeface that can generate a scalable range of font sizes.
A font in the IBM AFP environment has three components:
Coded font
Character set
Code page
Coded font
A coded font translates the request for a font type into characters for printing.
The bitmap coded font consists of references to:
the specific character set
the specific code page
The outline coded font consists of references to:
the specific character set
the specific code page
the point size
A character must be included in the specified character set and listed on the specified code page. A coded font couples a specific code page to a specific character set.
Character set
A character set contains the characters of a single type family, typeface and type size.
In addition, a character set specifies the character properties and printing attributes. The character properties define how a character is positioned relative to the characters around it. The printing properties define how the character set will be printed.
Character sets can be single-byte or double-byte. A single-byte character set (SBCS) is intended for use with a single-byte code page. SBCS is used for alphabetic languages like English and Dutch. A double-byte character set (DBCS) is intended for use with a double-byte code page. DBCS is used for non-alphabetic languages like Chinese and Japanese.
In the following table, an overview for single-byte and double-byte support for bitmap fonts and outline fonts is given.
Bitmap fonts |
Outline Fonts |
||
---|---|---|---|
Type 1 |
True Type |
||
SBCS |
Yes |
Yes |
Yes |
DBCS |
Yes |
No |
Yes |
Code page
A code page maps each character of text to the characters in a character set. A character entered at a computer terminal is translated into a code point. When the text is printed, each code point is match to a character ID on the specified code page. To be a valid code page for a particular character set, all character IDs in the code page must be included in that character set.
Code pages accommodate various national languages by using characters and special symbols appropriate to the language. Code pages can be single-byte (SBCS) or double-byte (DBCS).
Bar code
Standard bar code fonts, and additional US postnet and UK RM4SCC bar codes, are supported.