A PFA file (Printer Font ASCII) is an Adobe PostScript Type 1 font stored entirely as text. It contains the same font as a PFB file, only written in printable characters instead of binary. PFA was the usual form on Unix workstations and is still found in Linux font packages, PostScript interpreters, TeX distributions and in PostScript files that carry their fonts inside.
What a PFA file looks like
Open a PFA in any text editor and the first line reads something like %!PS-AdobeFont-1.0: Helvetica 001.006. What follows is an ordinary PostScript program:
- Clear-text header with the font name, family, weight, the FontMatrix and the encoding, the table that assigns glyphs to at most 256 character codes.
- Encrypted part after the keyword
eexec: the glyph outlines (cubic Bézier curves) and their hints, encrypted by Adobe's eexec scheme and written as hexadecimal digits. - Trailer of 512 zeros and the operator
cleartomark.
Hexadecimal text needs two characters per byte, so a PFA is roughly twice the size of the PFB with the same font. The advantage used to be practical: plain text survived old e-mail systems, FTP in text mode and printer connections that only passed 7-bit ASCII. A printer driver could also send a PFA to a PostScript printer as it was. Like PFB, a PFA has no kerning. Kerning pairs are in a separate AFM metrics file.
History and status
Type 1 comes from Adobe in the mid-1980s. Adobe published the Type 1 specification in 1990, and that document also describes the hexadecimal form PFA uses. The whole format family is now obsolete: Adobe applications have not accepted Type 1 since early 2023, Microsoft Office for Windows has not used them since Office 2013 and Microsoft has announced that future Windows releases will drop them. Details are on our PFB page. On Linux, FreeType still renders Type 1 and PostScript interpreters still use it, but desktop programs such as LibreOffice ignore Type 1 fonts since 2017.
Opening and editing PFA
- Any text editor shows the header, so you can read the font name and version without special software.
- FontForge (Windows, macOS, Linux, free) opens PFA, displays the glyphs and saves to modern formats.
- Windows cannot install PFA at all. It accepts Type 1 only as a PFM and PFB pair, so a PFA has to be converted first.
Converting PFA
PFA and PFB carry identical data, so conversion between them loses nothing. For everyday use, though, the better target is OTF: Windows, macOS and current design software install it directly, and its CFF outlines use the same curves and hints as Type 1. Our converter rebuilds the font. The result has the outlines and character widths of the original, but no kerning, because that was never stored in the PFA. If you also have the AFM file, the font will set more evenly with an editor that merges it in. For a website pick WOFF.
Converting a font does not change its licence. Fonts shipped with Linux, such as the URW clones of the standard PostScript fonts, come with free licences, but commercial Type 1 fonts often forbid modification. Read the licence first.
PFA at a glance
| Developer | Adobe |
|---|---|
| Introduced | mid-1980s (Type 1), specification public 1990 |
| Type | PostScript Type 1 outline font, text (hexadecimal) form |
| Encoding | up to 256 characters at once |
| Status | legacy, binary twin PFB, successor OpenType CFF |
| Typical place | Linux font packages, TeX, PostScript files |