Unique ID Numbers, ID Registration and Related Topics
Unique ID Numbers
Unique ID Registration
Related Topics
Q & A
Unique ID Numbers
What are Unique ID numbers?
Type 1 fonts may contain an optional Unique ID number that enables cross-job caching in a PostScript printer. This means that once a font is used in a print job, all subsequent print jobs that use the same characters and point sizes will print faster because the fonts have already been converted from outline to bitmap format (a relatively computing intensive activity).
Without a Unique ID number, a font will still cache characters in an optimal manner for the immediate print job. Also, the Unique ID number is not needed for caching with ATM on the user's host system.
Adobe Sytems will allocate numbers for commercial Type 1 fonts. For fonts that will not be commercially marketed, please see "Open Range Unique ID Numbers," below. There is no charge for registration of Unique ID numbers.
How many numbers are needed?
One Unique ID number is needed for each Roman font (see below for large CID-keyed fonts). This means, for example, that a font family with four styles requires four numbers.
If a single font is to be used in two or more operating systems, e.g. for Macintosh and Windows, the same UID may be used for both versions. If a font is upgraded, it would be best to give the font a new Unique ID number, assuming that the resulting bitmaps are different.
Unique ID numbers only affect bitmap character caching in a PostScript environment. Other factors affecting caching include the character name and the PostScript-language transformation matrix (which specifies the size, rotation, and skewing of the character). The font name and the encoding value are deliberately not considered because of the possibility of duplicate names, and the fact that the encoding value is not relevant.
Open Range Unique ID Numbers
Adobe has allocated a range of 1 million numbers, from 4,000, 000 to 4,999,999, to be used in developing fonts, or which will be used in a limited manner such as for a single client (even if the client is a large company). For example, if you should buy a commercial Type 1 font, and then create a large number of variations of the font for use within a single organization, numbers from the open range should be used.
Unique ID Numbers for CID-keyed fonts (multi-byte fonts)
Type 1 fonts with large character sets, such as for Chinese, Japanese, or Korean, should use the CID-keyed font file format. These fonts require multiple Unique IDs for each font. Please see Adobe Tech Note #5014, "Adobe CMap and CIDFont Files Specification" (PDF: 274 KB).
For CID-Keyed Fonts
For CID-keyed fonts, an XUID is recommended, and an appropriate range of Unique ID numbers may also be used for compatibility with Level 1 PostScript Japanese printers.
Unique ID Registration
To request Unique ID numbers for your fonts, we need your name; company name; address; telephone, and email address - and the number of fonts you need numbers for.
The policy is to assign UniqueID numbers only for fonts which are currently in production, and which will be marketed for wide distribution. If additional fonts are produced later, you will easily be able to obtain additional numbers when those fonts are ready for distribution.
Note: Again, the 4-million range of numbers should be used for testing during development phase, and for creating variations of fonts which will be used, for example, within a company or by a limited group of users.
For questions or registration of UniqueID numbers, please send an email message to: fontdevsup@adobe.com
Related Topics
Vendor ID Numbers
Vendor IDs are two or three character codes which are registered by Adobe and that may be used in a font name to help assure the uniqueness of the name. For details of the constraints on the number of characters in a font name, and other information related to the Vendor ID, please see Adobe Tech Note #5088, Font Naming Issues
(PDF: 146 KB). To enquire about registration, please contact fontdevsup@adobe.com.
Macintosh FOND ID (NFNT, or screen font) numbers
Font developers often ask about FOND ID numbers, which are numbers that were once assigned by Apple for use with Macintosh screen fonts. Once famous for causing font ID conflicts in a Macintosh system, they are rarely a problem now that both System 7 and most applications handle fonts by name, rather than by number.
Apple no longer allocates these numbers as they were limited to 32,768 numbers, all of which have long since been assigned. As this number is still a required part of a Macintosh screen font, font vendors can just pick any range or random numbers from the appropriate range. Use any number between 1024 and 16,384 for Roman fonts, and from 16,385 to 32,768 for non-Latin fonts. If you develop non-Latin fonts, please try to find out about the appropriate range for your fonts, as it may make a difference in some applications.
For more information on Type 1 Unique ID numbers, please see:
- The PostScript Language Reference Manual, 2nd Edition, Chapter 5; ISBN 0-201-18127-4 (Chapter 5 contains description of UniqueID and XUID).
- The Adobe Type 1 Font Format. Addison-Wesley, 1991 (ISBN 0-201-57044-0)
- Adobe Technical Note #5014, "Adobe CMap and CIDFont Files Specification" (274 KB)
Q & A
If multiple font products all use the same character sets, but use multiple encodings and different font names, does each font require a separate Unique ID number?
No, fonts that share the same character set (where the outline shape for each glyph is identical), can share the same Unique ID number, since caching does not depend on either font name or encoding value. In fact, it can be a potential advantage for the user if this is done.
When developing my fonts, I make changes to characters, but sometimes the changes do not show up in the next display or printing of the font. What are those bytes for?
Most font development tools have documentation explaining how to avoid this problem, so you should check that. However, both the display driver of the operating system and the PostScript interpreter cache the bitmap characters that have been created from the outline font. It may be that the only way to assure that you are not seeing cached characters is to power-cycle the device. However, be careful of printers with hard disks attached, since characters may be cached to the hard disk and may not be affected when the power is turned off.