PostScript fonts

From Wikipedia, the free encyclopedia

PostScript fonts are outline font specifications developed by Adobe for professional digital typesetting, which uses PostScript file format to encode font information.

Contents

[edit] Font type

[edit] Type 0

Type 0 is a "composite" font format - as described in the PostScript Language Reference Manual, 2nd Edition. A composite font is composed of a high-level font that references multiple descendent fonts.

[edit] Type 1

PostScript Type 1
File name extension
Windows & OS/2:
.pfb
Mac OS:
.pfm
.afm, .inf (Optional files).
Linux:
.pfa
.afm
OS/2:
.ofm 
Type code
Mac: 
LWFN  (prn/outline-data/Mac-bitmap).
sfnt (Mac PS1 bitmap) suitcase file.
printer (prn) outline (FOND/bitmap) file.
ffil (display).
FFIL (suitcase/screen).
Win: 
binary (.pfb).
Developed by Adobe Systems
Type of format PostScript outline font
Extended to .otf (OpenType PostScript).

Type 1 (also known as PostScript, PostScript Type 1, PS1, T1 or Adobe Type 1) is the font format for single-byte Roman fonts for use with Adobe Type Manager software and with PostScript printers. It can support font hinting.

It was originally a proprietary specification, but Adobe released the specification to third-party font manufacturers provided that all Type 1 fonts adhere to it.

[edit] History

Type 1 was effectively a simplification of the PS system to store outline information only, as opposed to being a complete language (PDF is similar in this regard). Adobe would then sell licenses to the Type 1 technology at a very high cost, but with support for hinting. Type 3 fonts, a cheaper implementation of Type 1, allowed for all the sophistication of the PostScript language, but without the standardized approach to hinting. Other differences further added to the confusion.

The cost of the licensing was considered very high at this time, and Adobe continued to stonewall on more attractive rates. It was this issue that led Apple to design their own system, TrueType, around 1991. Immediately following the announcement of TrueType, Adobe published the specification for Type 1 font format. Retail tools such as Altsys Fontographer (on January 1995 acquired by Macromedia, owned by FontLab since May 2005) added the ability to create Type 1 fonts. Since then, many free Type 1 fonts have been released; for instance, many of the fonts used with the TeX typesetting system are available in this format.

[edit] Technology

By using PostScript (PS) language, the glyphs are described with cubic Bezier curves (as opposed to the quadratic curves of TrueType), and thus a single set of glyphs can be resized through simple mathematical transformations, which can then be sent to a PostScript-ready printer. Because the data of Type 1 is a description of the outline of a glyph and not a raster image, Type 1 fonts are commonly referred to as "outline fonts". For users wanting to preview these typefaces on an electronic display, small versions of a font need extra hints and anti-aliasing to look legible and attractive on screen. This often came in the form of an additional bitmap font of the same typeface, optimized for screen display. Otherwise, in order to preview the Type 1 fonts in typesetting applications, the Adobe Type Manager utility was required.

[edit] PostScript font utilities

The t1utils font utility package by I. Lee Hetherington and Eddie Kohler provides tools for decoding Type 1 fonts into a human-readable, and editable format (t1disasm), reassembling them back into fonts (t1asm), for converting between the ASCII and binary formats (t1ascii and t1binary), and for converting from Macintosh PostScript format to Adobe PostScript font format (unpost).

[edit] Type 2

Type 2 is a character string format that offers a compact representation of the character description procedures in an outline font file. The format is designed to be used with the Compact Font Format (CFF). The CFF/Type2 format is the basis for Type 1 OpenType fonts, and is used for embedding fonts in Acrobat 3.0 PDF files (PDF format version 1.2).

[edit] Type 3

Type 3 font (also known as, PostScript Type 3 or PS3, T3 or Adobe Type 3) consists of glyph defined using the full PostScript language, rather than just a subset. Because of this, a Type 3 font can do some things that Type 1 fonts cannot do, such as specify shading, color, and fill patterns. However, it does not support hinting. Adobe Type Manager does not support Type 3 fonts.

[edit] Type 4

Type 4 is a format that was used to make fonts for printer font cartridges and for permanent storage on a printer's hard disk. The character descriptions are expressed in the Type 1 format. Adobe does not document this proprietary format.

[edit] Type 5

Type 5 is similar to the Type 4 format but is used for fonts stored in the ROMs of a PostScript printer. It is also known as CROM font (Compressed ROM font).

[edit] Types 9, 10, 11

Ghostscript referred them as CID font types 0, 1, and 2 respectively, documented in Adobe supplements. Types 9, 10, 11 are CID keyed fonts for storing Types 1, 3, 42 respectively.

[edit] Type 14

Type 14, or the Chameleon font format, is used to represent a large number of fonts in a small amount of storage space. The core set of Chameleon fonts consists of one Master Font, and a set of font descriptors that specify how the Master Font is to be adjusted to give the desired set of character shapes for a specific typeface.

Adobe does not document the Type 14 format.

[edit] Type 32

Type 32 is used for downloading bitmap fonts to PostScript interpreters with version number 2016 or greater. The bitmap characters are transferred directly into the interpreter's font cache, thus saving space in the printer's memory.

[edit] Type 42

Type 42 font format is a TrueType font embedded in PostScript file format, allowing PostScript-capable printers containing TrueType rasterizer, which was first implemented in PostScript interpreter version 2010 as an optional feature. Support for multi-byte CJK TrueType fonts was added in version 2015. The out-of-sequence choice of the number 42 is said to be a jesting reference to The Hitchhiker's Guide to the Galaxy (book), where 42 is the Answer to Life, the Universe, and Everything.

[edit] File formats

[edit] CID

CID Font (also known as CID-keyed Font, CID-based Font) is a PostScript font file format designed to address a large number of glyphs. It was developed to support non-Roman character sets as these comprise more characters than the Roman typefaces that make up most western fonts, including Identity-H and Identity-V fonts.

Adobe developed the CID-keyed font format to solve the problems in OCF/Type 0 fonts, for addressing the complex Asian-language (CJK) encoding and very large character set issues.

CID-keyed font format can be used with the Type 1 font format for standard CID-keyed fonts, or Type 2 for CID-keyed OpenType fonts.

[edit] Compact Font Format

Compact Font Format (also known as CFF font format, Type 2 font format, or CFF/Type 2 font format) is designed to use less storage space than Type 1 fonts, by using operators with multiple arguments, various pre-defined default values, more efficient allotment of encoding values and shared subroutines among FontSet (family of fonts). OpenType fonts can also contain glyph outlines in a CFF table.

CFF is designed to use with the Type 2 charstring format. It forms the basis for the Type 1 OpenType font format.

CFF fonts can be embedded in PDF files, starting with PDF version 1.2. Type 2 charstring font format and CID-keyed font| format can be used together for CID-keyed OpenType fonts.

A Type 1 font can be converted into CFF/Type2 format, and back to Type 1 again, without any loss of quality.

[edit] Multiple Master

Main article: Multiple master fonts

Multiple master fonts (or MM fonts) are (or, rather, were) an extension to Adobe Systems' Type 1 PostScript fonts, now mostly superseded by the advent of OpenType. Multiple master fonts contain one or more "masters" — that is, original font styles — and enable a user to interpolate these font styles along a continuous range of "axes."

[edit] OpenType

Main article: OpenType

PostScript glyph data can be embedded in OpenType font files, but OpenType font isn't limited to use PostScript outline. PostScript outlines in OpenType font are encoded in Compact Font Format.

[edit] Original Composite Font

Original Composite Font format (which uses a Type 0 file structure) was Adobe's first effort to implement a format for fonts with large character sets, debuted with PostScript level 2.

Adobe then developed the CID-keyed font file format which was designed to offer better performance and a more flexible architecture for addressing the complex Asian-language encoding and character set issues. Adobe does not document or support OCF font format.

OCF font metrics are described in Adobe Composite Font Metrics file.

[edit] Adobe Font Metrics, Adobe Composite Font Metrics, Adobe Multiple Font Metrics

Adobe Font Metrics (AFM), Adobe Composite Font Metrics (ACFM), Adobe Multiple Font Metrics (AMFM) files contain general font information and font metrics information for the font program. These files are generally used directly only in Unix environments.

An AFM file provides both global metrics for a font program and the metrics of each individual character.

The metrics of a multiple master font are described by one AMFM file, which specifies the control data and global font information, plus one AFM file for each of the master designs in the font.

An ACFM file provides information about the structure of a composite font. Specifically, the global metrics of the composite font program and the global metrics of each of its immediately descendent font programs. ACFM file does not associate with a base font, but act as the top-level structure of a composite font. The character metrics of individual characters in the composite font are described completely by one of more associated AFM files.

The formats are sufficiently similar that a compliant parser can parse AFM, ACFM, and AMFM files.

[edit] Printer Font ASCII

Printer Font ASCII (PFA) is an ASCII version of PFB, usually carrying ".PFA" file name extension. It contains a font's glyph data. PFA is the form of the font used by PostScript-language interpreters, and is also the preferred format for Type 1 fonts used in UNIX environments.

[edit] Printer Font Binary

Printer Font Binary (PFB) is a binary PostScript font format created by Adobe, usually carrying ".PFB" file name extension. It contains a font's glyph data.

[edit] Printer Font Metric

Printer Font Metric (PFM) is a binary version of AFM, usually carrying ".PFM" file name extension. It contains font metric information.

[edit] .INF

.inf (INFormation) files contain application-specific information in plain ASCII text, such as font menu names for Windows and DOS-based applications. When a font is installed in Windows, the ATM Installer software takes the AFM and the INF file as input and generates the required PFM file at installation time. The AFM and INF files are not installed in the user's system.

[edit] .MMM

.MMM files are used for the metric data needed by multiple master fonts for the Windows environment.

[edit] .OFM

.OFM is the extension used by OS/2 for its version of binary font metrics file, starting from version 2.1.

[edit] Character sets

Although PostScript fonts can be encoded in any character set, there are character sets specifically developed by Adobe, which are used by fonts developed by Adobe.

[edit] Adobe Western 2

It includes a basic character set containing upper and lowercase letters, figures, accented characters, and punctuation. These fonts also contain currency symbols (cent, dollar, euro, florin, pound sterling, yen), standard ligatures (fi, fl), common fractions (1/4, 1/2, 3/4), common mathematics operators, superscript numerals (1,2,3), common delimiters and conjoiners, and other symbols (including daggers, trademark, registered trademark, copyright, paragraph, litre and estimated symbol). Western 2 also adds 17 additional symbol characters: euro, litre, estimated, omega, pi, partialdiff, delta, product, summation, radical, infinity, integral, approxequal, notequal, lessequal, greaterequal, and lozenge.

Fonts with an Adobe Western 2 character set support most western languages including Afrikaans, Basque, Breton, Catalan, Danish, Dutch, English, Finnish, French, Gaelic, German, Icelandic, Indonesian, Irish, Italian, Norwegian, Portuguese, Sami, Spanish, Swahili and Swedish.

This standard superseded ISO-Adobe as the new minimum character set standard as implemented in OpenType fonts from Adobe.

[edit] Adobe CE

Fonts with an Adobe CE character set also include the characters necessary to support the following central European languages: Croatian, Czech, Estonian, Hungarian, Latvian, Lithuanian, Polish, Romanian, Serbian (Latin), Slovak, Slovenian and Turkish.

[edit] Adobe-GB1

This Simplified Chinese character collection provides support for the GB 1988-89, GB 2312-80, GB/T 12345-90, GB 13000.1-93, and GB 18030-2005 character set standards. Supported encodings include ISO-2022, EUC-CN, GBK, UCS-2, UTF-8, UTF-16, UTF-32, and the mixed one, two- and four-byte encoding as published in GB 18030-2005.

[edit] Adobe-CNS1

This Traditional Chinese character collection provides support for the Big-5 and CNS 11643-1992 character set standards. It also includes support for a number of extensions to Big-5, which contain characters used mainly in the Hong Kong locale. Primary supported Big-5 extensions include HKSCS.

Supported encodings include ISO-2022, EUC-TW, Big Five, UCS-2, UTF-8, UTF-16, and UTF-32.

[edit] Adobe-Japan1

It is a series of character sets developed for Japanese fonts. Adobe's latest, the Adobe-Japan1-6 set covers character sets from JIS X 0208, ISO-2022-JP, Microsoft Windows 3.1 J, JIS X 0213:2004, JIS X 0212-1990, Kyodo News U-PRESS character set.

[edit] Adobe-Japan2

It was originally as an implementation of JIS X 0212-1990 character set standard and the Macintosh extensions, but with the introduction of Adobe-Japan1 supplement 6 (Adobe-Japan1-6) standard, Adobe-Japan2-0 became obsolete.

[edit] Adobe-Korea1

This Korean character collection is provides support for the KS X 1001:1992 and KS X 1003:1992 character set standards, and their selected corporate variations. Supported encodings include ISO-2022-KR, EUC-KR, Johab, UHC, UCS-2, UTF-8, UTF-16, and UTF-32.

[edit] ISO-Adobe

Fonts with an ISO-Adobe character set support most western languages including: Afrikaans, Basque, Breton, Catalan, Danish, Dutch, English, Finnish, French, Gaelic, German, Icelandic, Indonesian, Irish, Italian, Norwegian, Portuguese, Sami, Spanish, Swahili and Swedish. This is the standard character set in most PostScript Type 1 fonts from Adobe.

[edit] Windows support

Windows 95, Windows 98, Windows NT and Windows Me do not support Type 1 fonts natively. Adobe Type Manager is needed in order to use these fonts on these operating systems. Windows 2000, Windows XP and Windows Vista support Type 1 fonts natively through GDI calls. The Windows Presentation Foundation introduced in Windows Vista, which is also available for Windows XP however drops support for Type 1 fonts, in favor of Type 2 fonts.

For Windows platforms that natively support PostScript, only binary PostScript and OpenType file formats are supported.

Windows Presentation Foundation (formerly codenamed Avalon) in Windows Vista supports rasterizing OpenType CFF/Type 2 fonts, whereas Type 1 fonts will still be supported in GDI, but not in GDI+.

[edit] Core Font Set

In addition of font types, PostScript specifications also defined Core Font Set, which dictates the minimum number of fonts and character sets to be supported by each font. In PostScript 3, 136 fonts are specified, which includes the standard 35 fonts; core fonts in Windows 95, Windows NT and Macintosh; selected fonts from Microsoft Office and the HP 110 font set.

[edit] See also

[edit] External links

[edit] Type info

[edit] File format info

[edit] Character set info

[edit] Core font info

[edit] Miscellaneous