Important: This document is deprecated. Please see Cocoa Text Architecture Guide for information about font handling in the Cocoa text system.
Introduction to Font Handling
Font Handling discusses fonts, the font management system, and the user interface to allow the user to interact with available fonts.
Who Should Read This Document
You should read this document if you need to understand how the text system manages font objects, how the font manager works, and how to modify that behavior. If your application allows users to manipulate fonts, for example, especially if it goes beyond default Cocoa behavior, then you should read this document.
To understand the information in this programming topic, you should understand generally the text system’s capabilities and architecture, and you should understand basic Cocoa programming conventions.
Organization of This Document
These articles discuss working with NSFont objects:
Creating a Font Object describes the methods you use to create font objects.
Getting Font Metrics describes font metrics and correlates them with the methods you use to retrieve that information.
Querying Aqua Font Variations lists the methods you use to retrieve the standard fonts used in the Aqua user interface.
Characters and Glyphs defines and differentiates characters and glyphs and explains how the text system converts character strings into glyphs for display.
Calculating Glyph Layout describes the sequential, overstruck, and stacked methods of laying out glyphs.
Special Glyphs describes null glyphs and control glyphs.
These articles discuss working with the font manager:
Recording the Font in a Selection explains how an object that enables the user to select fonts should interact with the font manager.
Initiating Font Changes describes the font-changing action methods of the font manager.
Creating a Font Manager explains how to set up a font manager object programmatically.
Responding to Font Changes explains how a text object should respond to a font-changing message from the font manager.
Converting Fonts Manually describes the NSFontManager methods you use to convert the traits and characteristics of a font.
Examining Fonts describes the methods applications can use to retrieve information about font availability and characteristics.
Customizing the Font Conversion System discusses adding custom controls to the Font panel, subclassing NSFontManager and NSFontPanel, and using your own Font menu.
For further reading, refer to the following documents:
Font Panel Programming Topics explains how the Font panel interacts with the text system.
Attributed String Programming Guide describes NSAttributedString objects, which manage sets of attributes, such as font and kerning, that are associated with character strings or individual characters.
Text Layout Programming Guide describes how the Cocoa text system converts strings of text characters, font information, and page specifications into lines of glyphs placed at specific locations on a page, suitable for display and printing.
For related reference information, see the following documents: