Member Login Log In | Not a Member? Contact ADC
Jump To:
Reference Library
Mac OS X text-manipulation APIs provide basic text input and display as well as text encoding conversions, text-search capabilities, and document summarizations. These APIs also enable sophisticated typography. Developers can, for example, precisely position individual glyphs and lines of text, draw Unicode text at any angle of rotation, kern text, and activate and deactivate fonts.

A guided introduction for developers new to Mac OS X text and fonts.  
Document Descriptions
On Off
Display

Sorted by
Title
Sort by
Topic
Sort by
Resource Type
Sort by
Date
Apple Type Services for Fonts Programming Guide (HTML) (PDF)
Explains how to access fonts using the ATS-based font management API. Includes implementing the Fonts window.
Carbon, Typography Guides 2007-12-11
Apple Type Services for Fonts Reference (HTML) (PDF)
Describes the C API for ATS-based font access and management.
Carbon, Typography Reference 2007-12-11
ATSUI Programming Guide (HTML) (PDF)
Explains how to lay out, process, and draw Unicode text.
Carbon, Typography Guides 2007-07-10
ATSUI Reference (HTML) (PDF)
Describes the C API for rendering Unicode-encoded text with advanced typographic features.
Carbon, Typography Reference 2007-06-28
ATSUIDirectAccessDemo (HTML) (DMG) (ZIP)
Demonstrates some basic manipulations of the ATSUI DirectAccess api.
Carbon Sample Code 2003-01-14
Attributed Strings Programming Guide (HTML) (PDF)
Explains how to use attributed strings, which manage attributes of character strings or individual characters.
Carbon, Cocoa, Text Manipulation Guides 2007-06-04
BasicInputMethod (HTML) (DMG) (ZIP)
An input method implemented as a text service component for Mac OS X.
Carbon Sample Code 2003-01-14
Carbon Core Release Notes (HTML)
Carbon Release Note 2007-10-31
CFAttributedString Reference (HTML) (PDF)
Describes the opaque type for representing an immutable character string and associated set of attributes.
Carbon Reference 2005-12-06
CFMutableAttributedString Reference (HTML) (PDF)
Describes the opaque type for representing a mutable character string and associated set of attributes.
Carbon Reference 2005-12-06
Connecting the Font Menu in Interface Builder 3 (HTML)
QA1571: How to connect and configure the Font/Format menus in Interface Builder 3.
Cocoa, Tools Technical Q&A 2008-01-21
Converting to Precomposed Unicode (HTML) (日本語 HTML)
QA1235: Describes how to convert a string to precomposed Unicode.
Text Manipulation Technical Q&A 2003-02-07
Core Text Programming Guide (HTML) (PDF)
Explains how to do text layout and font-related operations using the Core Text programming interfaces.
Carbon, Typography Guides 2008-02-08
Core Text Reference Collection (HTML) (PDF)
Describes the C API providing text and font services to applications and application environments.
Carbon, Typography Reference 2007-12-04
Core Text String Attributes Reference (HTML) (PDF)
Describes the CFAttributedString attributes recognized by Core Text.
Carbon Reference 2007-05-01
Core Text Utilities Reference (HTML) (PDF)
Describes the Core Text functions and data types that apply to the framework as a whole.
Carbon Reference 2007-04-21
CoreTextArc (HTML) (DMG) (ZIP)
Illustrates the use of fonts, lines, and runs in a CoreText text drawing Carbon application.
Carbon Sample Code 2007-06-04
CoreTextTest (HTML) (DMG) (ZIP)
Shows how to handle the CoreText objects to display text.
Carbon Sample Code 2006-12-19
CTFont Reference (HTML) (PDF)
Describes the Core Text opaque type that represents a font.
Carbon Reference 2007-06-29
CTFontCollection Reference (HTML) (PDF)
Describes the Core Text opaque type used to store a collection of font references.
Carbon Reference 2007-05-16
CTFontDescriptor Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent a font descriptor.
Carbon Reference 2007-05-30
CTFrame Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent a frame containing multiple lines of text.
Carbon Reference 2007-05-01
CTFramesetter Reference (HTML) (PDF)
Describes the Core Text opaque type used to generate text frames.
Carbon Reference 2007-04-21
CTGlyphInfo Reference (HTML) (PDF)
Describes the Core Text opaque type used to override a font's mapping from Unicode to the glyph ID.
Carbon Reference 2007-05-09
CTLine Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent a line of text.
Carbon Reference 2007-05-24
CTParagraphStyle Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent paragraph or ruler attributes in an attributed string.
Carbon Reference 2007-04-21
CTRun Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent a glyph run.
Carbon Reference 2007-05-24
CTTextTab Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent a tab in a paragraph style.
Carbon Reference 2007-05-01
CTTypesetter Reference (HTML) (PDF)
Describes the Core Text opaque type used to represent a typesetter, which performs line layout.
Carbon Reference 2007-05-01
Disabling and Enabling an NSTextView (HTML)
QA1461: Shows how a Cocoa application can disable and enable an NSTextView.
Cocoa Technical Q&A 2006-09-11
Drawing attributed strings that are both filled and stroked (HTML)
QA1531: Describes how the value of NSStrokeWidthAttributeName indicates fill, stroke, or both, in attributed strings.
Cocoa Technical Q&A 2008-03-25
Enumerating fonts with ATS (HTML)
QA1471: Describes the different ATS font enumeration methods
Carbon Technical Q&A 2006-04-14
The Euro Currency Symbol (HTML) (日本語 HTML)
TN1140: The available information about Mac OS and Mac Mac OS X Server support for the Euro currency symbol.
Typography Technical Note 2000-01-01
Find By Content Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for performing relevance-ranked searches. Replaced by Search Kit.
Carbon, Cocoa Reference 2006-07-13
Font Handling (HTML) (PDF)
Explains the Cocoa font management system and how users select fonts.
Cocoa, Typography Guides 2008-02-08
Font Manager Reference (HTML) (PDF)
Describes the C API for QuickDraw-based font access and management.
Carbon Reference 2007-12-11
Font Panel (HTML) (PDF)
Explains how to use the Cocoa Font panel.
Cocoa Guides 2004-08-31
Fonts Panel Reference (HTML) (PDF)
Describes the C API for providing a Fonts window in a Carbon application.
Carbon Reference 2007-02-26
FontSync Reference (HTML) (PDF)
Describes the C API for content-based font identification and comparison.
Carbon, Typography Reference 2002-10-01
Frequently Asked Text Services Manager (TSM) Questions (HTML)
TN2128: Regroups a collection of Text Services Manager (TSM) questions frequently asked by Input Method Developers
Carbon, Cocoa Technical Note 2005-06-24
grayishTextOr and Mac OS 8.5 (HTML) (日本語 HTML)
Deprecated - QD59: Explains why text drawn using TextMode(grayishTextOr) is never drawn; provides a workaround.
Carbon Technical Q&A 1998-12-07
Handling Unicode Text Editing With MLTE (HTML) (PDF)
Explains how to use Apple's multilingual text engine.
Carbon Guides 2006-09-05
HITextShowcase (HTML) (DMG) (ZIP)
Illustrates some of the different text-related controls, non-controls, and HIViews that are available in Mac OS X 10.3.
Carbon Sample Code 2003-10-27
HITextViewDemo (HTML) (DMG) (ZIP)
Overview of basic HITextView functionality, including Tiger's new font & spelling panel support.
Carbon Sample Code 2005-06-01
HITextViewShowcase (HTML) (DMG) (ZIP)
Shows how to create a HITextView using Interface Builder and using programming functions only.
Carbon Sample Code 2003-10-30
How do I get the hexadecimal value of an NSColor object? (HTML)
QA1576: Describes how to convert an NSColor object to its Hexadecimal value.
Cocoa Technical Q&A 2007-12-19
How to make NSTextField accept tab, return and enter keys. (HTML)
QA1454: Describes how to make the NSTextField control accept tab, return and enter keys by using the control's dispatch delegate method.
Cocoa Technical Q&A 2006-10-09
How to use the ATSUI Low Level APIs to get glyph outlines (HTML) (日本語 HTML)
TN2033: Covers the ATSUI low-level APIs.
Carbon Technical Note 2001-11-26
IMKCandidates Class Reference (HTML) (PDF)
Describes the class that supports the use of candidate windows for an input method.
Cocoa, Text Manipulation Reference 2007-06-05
IMKInputController Class Reference (HTML) (PDF)
Describes the class that controls input on the input method side.
Cocoa, Text Manipulation Reference 2007-06-06
IMKMouseHandling Protocol Reference (HTML) (PDF)
Describes the protocol used to receive mouse events for an input method client session.
Cocoa, Text Manipulation Reference 2007-06-05
IMKServer Class Reference (HTML) (PDF)
Describes the class that manages connections to input method clients.
Cocoa, Text Manipulation Reference 2007-06-06
IMKServerInput Protocol Reference (HTML) (PDF)
Describes the informal protocol used to receive text events.
Cocoa, Text Manipulation Reference 2007-06-06
IMKStateSetting Protocol Reference (HTML) (PDF)
Describes the protocol used to set or access state values for an input method client session.
Cocoa, Text Manipulation Reference 2007-06-05
IMKTextInput Protocol Reference (HTML) (PDF)
Describes the protocol used to send and obtain data from an input method client session.
Cocoa, Text Manipulation Reference 2007-06-05
Improving ATSUI Text Drawing Performance (HTML)
QA1027: Talks about one way of improving ATSUI text drawing performance.
Carbon, Typography Technical Q&A 2001-04-17
Ink Services Reference (HTML) (PDF)
Defines the C API for customizing handwriting recognition.
Carbon, Text Manipulation Reference 2006-01-10
InkSample (HTML) (DMG) (ZIP)
Demonstrates some usage scenarios for the Ink.Framework APIs.
Carbon Sample Code 2003-10-27
Input Method Kit Framework Reference (HTML) (PDF)
Describes the API for building input methods for Chinese, Japanese, and other languages.
Cocoa, Text Manipulation Reference 2007-06-06
Input Method Kit Reference Update (HTML) (PDF)
Summarizes the symbols added to the Input Method Kit framework.
Cocoa Reference 2007-07-18
Input Method Kit Release Note (HTML)
Describes an Objective-C framework for building input methods for Chinese, Japanese, and other languages.
Cocoa, Text Manipulation Release Note 2007-07-17
Keyboard Layout Services Reference (HTML) (PDF)
Describes the C API for managing key-to-character mappings used to support various languages.
Carbon Reference 2002-11-18
Latent Semantic Mapping Reference (HTML)
Describes the C API for classifying text and other token-based content based on latent semantic information.
Carbon, Cocoa, Text Manipulation Reference 2008-04-08
Locale Utilities Reference (HTML) (PDF)
Describes the C API for supporting conventions of a specific language or region.
Carbon Reference 2002-01-24
Locating a Font's Home File (HTML) (日本語 HTML)
Deprecated - TB18: Lists the steps necessary to find the home file of a given font.
Carbon Technical Q&A 1996-02-15
Losing the character code when using the control key (HTML)
QA1446: Explains why the control key transforms the character code instead of simply setting the appropriate modifier bit.
Carbon Technical Q&A 2006-07-17
MLTE_CustomScrolling (HTML) (DMG) (ZIP)
Shows how to implement MLTE's custom scrolling functionality
Carbon Sample Code 2004-10-15
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Carbon, Text Manipulation Sample Code 2003-10-27
Multilingual Text Engine Frequently Asked Questions (HTML) (日本語 HTML)
TN2026: A list of frequently asked questions for the Multilingual Text Engine (MLTE).
Carbon Technical Note 2005-09-12
Multilingual Text Engine Reference (HTML) (PDF)
Describes the C API for supporting Unicode text editing.
Carbon Reference 2007-02-19
NamingTableAccess (HTML) (DMG) (ZIP)
Digs out the contents of the NamingTable in a TrueType 'sfnt'.
Typography Sample Code 2003-01-14
NSATSTypesetter Class Reference (HTML) (PDF)
Describes a concrete subclass of NSTypesetter that places glyphs during text layout.
Cocoa, Typography Reference 2006-07-10
NSAttributedString Application Kit Additions Reference (HTML) (PDF)
Describes extensions to Foundation's NSAttributedString class that add support for document types, text attributes, and string handling.
Cocoa Reference 2007-12-04
NSAttributedString Class Reference (HTML) (PDF)
Describes the class for creating and managing strings that can have sets of attributes associated with specified character ranges.
Cocoa Reference 2006-06-28
NSChangeSpelling Protocol Reference (HTML) (PDF)
Describes the formal protocol implemented by objects that can correct a misspelled word.
Cocoa Reference 2006-05-23
NSFont Class Reference (HTML) (PDF)
Describes the class that represents fonts to an application.
Cocoa, Typography Reference 2007-06-08
NSFontAttributeExplorer (HTML) (DMG) (ZIP)
Demonstrates how to gather and display various metric information for installed fonts using NSFont.
Cocoa Sample Code 2006-10-26
NSFontManager Class Reference (HTML) (PDF)
Describes the class instantiated as the controller object for the font conversion system.
Cocoa Reference 2007-04-06
NSFontPanel Class Reference (HTML) (PDF)
Describes the class that implements the Font panel--a user interface object that displays a list of available fonts.
Cocoa Reference 2007-04-06
NSFontPanelValidation Protocol Reference (HTML) (PDF)
Describes the informal protocol used to tell the Font panel to display some or all of its elements.
Cocoa Reference 2007-04-06
NSGlyphGenerator Class Reference (HTML) (PDF)
Describes the class used to perform the initial, nominal glyph generation phase in the text layout process.
Cocoa, Typography Reference 2006-05-23
NSGlyphInfo Class Reference (HTML) (PDF)
Describes the class that allows you to override a font's default mapping from Unicode to its glyph ID.
Cocoa Reference 2007-03-01
NSGlyphStorage Protocol Reference (HTML) (PDF)
Describes the formal protocol that defines the methods a glyph storage object must implement to interact properly with NSGlyphGenerator.
Cocoa, Typography Reference 2006-05-23
NSIgnoreMisspelledWords Protocol Reference (HTML) (PDF)
Describes the formal protocol implemented by text-bearing objects to have the spelling checker maintain a list of words to ignore.
Cocoa Reference 2006-05-23
NSInputManager Class Reference (HTML) (PDF)
Describes the class used by text views to communicate with the text input management system.
Cocoa Reference 2007-04-01
NSInputServer Class Reference (HTML) (PDF)
Describes the class that interprets text view events and communicates them to the text input management system.
Cocoa Reference 2007-04-01
NSInputServerMouseTracker Protocol Reference (HTML) (PDF)
Describes the protocol implemented by text input servers to handle mouse events.
Cocoa Reference 2007-04-02
NSInputServiceProvider Protocol Reference (HTML) (PDF)
Describes the protocol implemented by text input servers to handle application and text field events.
Cocoa Reference 2007-04-02
NSLayoutManager Class Reference (HTML) (PDF)
Describes the class that coordinates the layout and display of characters held in an NSTextStorage object.
Cocoa, Text Manipulation Reference 2007-04-16
NSMutableAttributedString Additions Reference (HTML) (PDF)
Describes extensions to Foundation's NSMutableAttributedString class that add support for setting text attributes and making them consistent.
Cocoa Reference 2006-05-23
NSMutableAttributedString Class Reference (HTML) (PDF)
Describes the subclass of NSAttributedString that supports changing characters and attributes in the string.
Cocoa Reference 2006-06-28
NSMutableParagraphStyle Class Reference (HTML) (PDF)
Describes the class that supports changing the values of the subattributes in an NSParagraphStyle attribute.
Cocoa Reference 2006-05-23
NSParagraphStyle Class Reference (HTML) (PDF)
Describes the class that encapsulates the paragraph or ruler attributes used by the NSAttributedString classes.
Cocoa Reference 2006-05-23
NSRulerMarker Class Objective-C Reference (HTML) (PDF)
Describes the class that displays a symbol, such as a tab setting, on an NSRulerView object.
Cocoa Reference 2006-05-23
NSRulerView Class Reference (HTML) (PDF)
Describes the class that displays a ruler and markers adjoining an NSScrollView object's document view.
Cocoa Reference 2006-05-23
NSSecureTextFieldCell Class Reference (HTML) (PDF)
Describes the class that implements the user interface of NSSecureTextField.
Cocoa Reference 2007-10-31
NSSimpleHorizontalTypesetter Class Reference (HTML) (PDF)
Deprecated - Describes the class used for text line layout that has been replaced by NSATSTypesetter.
Cocoa, Typography Reference 2006-05-23
NSSpeechSynthesizer Class Reference (HTML) (PDF)
Describes the class used to parse text into speech.
Cocoa Reference 2007-07-23
NSSpellChecker Class Reference (HTML) (PDF)
Describes the class that gives any application an interface to the Cocoa spell-checking service.
Cocoa Reference 2007-04-27
NSSpellServer Class Reference (HTML) (PDF)
Describes the class used to make your particular spelling checker a service available to any application.
Cocoa Reference 2007-04-27