Overview
ISO/IEC 14496-28:2012 - Composite Font Representation (CFR) defines an XML-based virtual font format for combining multiple component fonts into a single composite font resource. The standard addresses the growing Unicode character repertoire by enabling multimedia, graphics and text systems to aggregate fonts that together cover multiple languages and Unicode ranges. CFR files may be instantiated with the filename extension .cfr and are structured around a single top-level PosingFont element (with required name and version attributes).
Keywords: ISO/IEC 14496-28, Composite Font Representation, CFR, XML font format, virtual font, .cfr, Unicode, multilingual fonts
Key technical topics and requirements
- XML structure and DTD: The format is specified as an XML document; a Document Type Definition (DTD) is provided in Annex A.
- Top-level elements: The PosingFont element can contain multiple Name elements, an optional FontMetrics element and a mandatory Components element.
- FontMetrics: Optional global metrics (e.g., unitsPerEm, ascender, descender, xMin/xMax, caretSlope, italicAngle, isFixedPitch, numGlyphs) to describe combined metrics derived from component fonts.
- Components and component definitions: Components can be single ComponentDef entries or LanguagePreferredList groups. A component is identified by a PostScript name and may include:
- LocationHint to indicate embedded, local, or remote font resources
- an optional transform matrix for scaling/transformations
- ICU UnicodeSet pattern strings (UnicodeCharSet) to declare coverage
- optional cmap overrides, map and ToUnicode/mapChar elements to control glyph mapping
- Ordering semantics: Component order is significant - first matching components provide default values and resolve overlapping character mappings.
- Interoperability references: Normative references include BCP 47 (language tags) and Unicode (Version 6.1). Examples and informative guidance are provided in Annex B.
Keywords: PostScript name, LocationHint, ICU UnicodeSet, cmapOverride, ToUnicode, Unicode mapping
Practical applications
- Create fallback fonts that automatically select appropriate font components for missing glyphs across scripts.
- Build virtual fonts for multilingual multimedia - video subtitling, digital publishing, UI rendering, and streaming text.
- Package composite font descriptions alongside MP4/AV content or web/embedded media to ensure consistent cross-platform rendering.
- Optimize font delivery for constrained devices (smartphones, set-top boxes) by referencing remote or embedded component resources.
Keywords: fallback font, multilingual rendering, subtitles, digital publishing, font packaging
Who should use this standard
- Font developers and foundries
- Multimedia authors, subtitling and captioning engineers
- Software engineers implementing font rendering, text layout or font management systems
- Device manufacturers and platform integrators needing robust multilingual text support
Related standards
- Other parts of ISO/IEC 14496 (e.g., Part 18 Font compression and streaming, Part 22 Open Font Format)
- Unicode and BCP 47 (language tagging)
Using ISO/IEC 14496-28 helps developers and content creators deliver consistent, multilingual typography by leveraging existing font technologies while managing complex Unicode coverage through a single, portable CFR description.