Jump To:
Leopard Reference Library: Carbon
Carbon is a set of C APIs that take advantage of new features and enhancements of Mac OS X, including protected memory, preemptive multitasking and dynamic resource allocation, as well as the Aqua interface. Carbon includes a set of C APIs for text input and display, managing fonts, converting text encodings, searching text, and performing sophisticated typography.

View all Text & Fonts Reference Library.
Document Descriptions
On Off

Sort by
Sort by
Resource Type
Sorted by
CFAttributedString Reference (HTML) (PDF)
Describes an immutable character string and its associated attributes.
Reference 2009-05-06
CFMutableAttributedString Reference (HTML) (PDF)
Describes a mutable character string and associated set of attributes.
Reference 2009-05-06
Search Kit Reference (HTML) (PDF)
Describes the interface for supporting user searches of textual content.
Reference 2009-05-06
CTFontDescriptor Reference (HTML) (PDF)
Describes a dictionary that fully specifies a font.
Reference 2008-10-15
Core Text Programming Guide (HTML) (PDF)
Explains how to do text layout and font-related operations using the Core Text programming interfaces.
Guides 2008-06-09
Strings Programming Guide for Core Foundation (HTML) (PDF)
Explains how to create, manipulate, and search strings in Core Foundation, and how strings interact with encodings and character sets.
Guides 2008-03-11
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.
Guides 2007-12-11
Apple Type Services for Fonts Reference (HTML) (PDF)
Describes the C API for ATS-based font access and management.
Reference 2007-12-11
Dictionary Manager Reference (HTML) (PDF)
Deprecated - Describes a deprecated technology replaced by Dictionary Services.
Reference 2007-12-11
Font Manager Reference (HTML) (PDF)
Describes the C API for QuickDraw-based font access and management.
Reference 2007-12-11
Managing Fonts: QuickDraw (HTML) (PDF)
Deprecated - Explains how to use the deprecated QuickDraw-based font-management API replaced by Core Text or ATS.
Guides 2007-12-11
Script Manager Reference (HTML) (PDF)
Deprecated - Describes a deprecated technology replaced by Unicode facilities.
Reference 2007-12-11
Core Text Reference Collection (HTML) (PDF)
Describes an API providing text and font services.
Reference 2007-12-04
Carbon Core Release Notes (HTML)
Release Notes 2007-10-31
DTSCarbonShell (HTML) (DMG) (ZIP)
Provides a modern Mac OS X Carbon Application Skeleton
Sample Code 2007-09-20
ATSUI Programming Guide (HTML) (PDF)
Explains how to lay out, process, and draw Unicode text.
Guides 2007-07-10
CTFont Reference (HTML) (PDF)
Describes a representation of a font.
Reference 2007-06-29
ATSUI Reference (HTML) (PDF)
Describes the C API for rendering Unicode-encoded text with advanced typographic features.
Reference 2007-06-28
Text Input Source Services Reference (HTML) (PDF)
Describes the API for operating on text input sources, such as keyboards, character palettes, and ink input.
Reference 2007-06-07
Attributed Strings Programming Guide (HTML) (PDF)
Explains how to use attributed strings, which manage attributes of character strings or individual characters.
Guides 2007-06-04
CoreTextArc (HTML) (DMG) (ZIP)
Illustrates the use of fonts, lines, and runs in a CoreText text drawing Carbon application.
Sample Code 2007-06-04
Dictionary Services Programming Guide (HTML) (PDF)
Explains how to create a dictionary and access it programmatically.
Guides 2007-05-30
Dictionary Services Reference (HTML) (PDF)
Describes the Objective-C and C routines that support programmatic access to dictionaries.
Reference 2007-05-29
Text Utilities Reference (HTML) (PDF)
Describes the C API for operating on strings (formatting, sorting, converting, comparing).
Reference 2007-05-29
CTLine Reference (HTML) (PDF)
Describes a line of text.
Reference 2007-05-24
CTRun Reference (HTML) (PDF)
Describes a set of consecutive glyphs sharing the same attributes and direction.
Reference 2007-05-24
CTFontCollection Reference (HTML) (PDF)
Describes a collection of fonts.
Reference 2007-05-16
CTGlyphInfo Reference (HTML) (PDF)
Describes an opaque type used to override a font's mapping from Unicode to glyph ID.
Reference 2007-05-09
Core Text String Attributes Reference (HTML) (PDF)
Describes the string attributes recognized by Core Text.
Reference 2007-05-01
CTFrame Reference (HTML) (PDF)
Describes a multiline text frame.
Reference 2007-05-01
CTTextTab Reference (HTML) (PDF)
Describes a tab in a paragraph style.
Reference 2007-05-01
CTTypesetter Reference (HTML) (PDF)
Describes the opaque type that performs line layout.
Reference 2007-05-01
Core Text Utilities Reference (HTML) (PDF)
Describes general Core Text functions and data types.
Reference 2007-04-21
CTFramesetter Reference (HTML) (PDF)
Describes an opaque type that generates text frames.
Reference 2007-04-21
CTParagraphStyle Reference (HTML) (PDF)
Describes paragraph or ruler attributes in an attributed string.
Reference 2007-04-21
Fonts Panel Reference (HTML) (PDF)
Describes the C API for providing a Fonts window in a Carbon application.
Reference 2007-02-26
Multilingual Text Engine Reference (HTML) (PDF)
Describes the C API for supporting Unicode text editing.
Reference 2007-02-19
CoreTextTest (HTML) (DMG) (ZIP)
Shows how to handle the CoreText objects to display text.
Sample Code 2006-12-19
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.
Technical Q&As 2006-07-17
Find By Content Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for performing relevance-ranked searches. Replaced by Search Kit.
Reference 2006-07-13
QuickDraw Text Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for measuring and drawing text. Replaced by ATSUI.
Reference 2006-07-13
TextEdit Reference (HTML) (PDF)
Deprecated - Describes the deprecated technology replaced by the Multilingual Text Engine (MLTE).
Reference 2006-07-13
Pascal String Utilities Reference (HTML) (PDF)
Describes the C API for manipulating Pascal strings in Carbon applications.
Reference 2006-07-12
Enumerating fonts with ATS (HTML)
QA1471: Describes the different ATS font enumeration methods
Technical Q&As 2006-04-14
Unicode Utilities Reference (HTML) (PDF)
Describes the C API that allows applications and input methods to operate on Unicode text.
Reference 2006-01-10
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Guides 2005-12-06
Text Services Manager Reference (HTML) (PDF)
Describes the C API for communicating between client applications and provider modules.
Reference 2005-11-09
Multilingual Text Engine Frequently Asked Questions (HTML) (日本語 HTML)
TN2026: A list of frequently asked questions for the Multilingual Text Engine (MLTE).
Technical Notes 2005-09-12
PasteboardPeeker (HTML) (DMG) (ZIP)
Using pasteboards for Copy and Paste, Drag and Drop, service support and filter services.
Sample Code 2005-08-10
TypeServicesForUnicode (HTML) (DMG) (ZIP)
Shows how to use various ATSUI functions and features going from simple to very complex.
Sample Code 2005-08-10
Programming With the Text Encoding Conversion Manager (HTML) (PDF)
Explains character encodings, Unicode conversion, and custom converter plug-ins. Lists encoding variants.
Guides 2005-07-07
Supporting Unicode Input (HTML) (PDF)
Introduces international text in Mac OS X and lists the tasks an application needs to perform.
Guides 2005-07-07
Text Encoding Conversion Manager Reference (HTML) (PDF)
Describes the C API for transferring text across other platforms or over the Internet.
Reference 2005-07-07
Frequently Asked Text Services Manager (TSM) Questions (HTML)
TN2128: Regroups a collection of Text Services Manager (TSM) questions frequently asked by Input Method Developers
Technical Notes 2005-06-24
HITextViewDemo (HTML) (DMG) (ZIP)
Overview of basic HITextView functionality, including Tiger's new font & spelling panel support.
Sample Code 2005-06-01
Sorting Like the Finder (HTML)
QA1159: Shows how to sort strings like the Finder's list view.
Technical Q&As 2004-10-27
MLTE_CustomScrolling (HTML) (DMG) (ZIP)
Shows how to implement MLTE's custom scrolling functionality
Sample Code 2004-10-15
SetFontInfoForSelection incorrect prototype (HTML)
QA1375: Describes the incorrect prototyping of the SetFontInfoForSelection API and gives a workaround.
Technical Q&As 2004-10-04
HITextViewShowcase (HTML) (DMG) (ZIP)
Shows how to create a HITextView using Interface Builder and using programming functions only.
Sample Code 2003-10-30
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.
Sample Code 2003-10-27
InkSample (HTML) (DMG) (ZIP)
Demonstrates some usage scenarios for the Ink.Framework APIs.
Sample Code 2003-10-27
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Sample Code 2003-10-27
Using Ink Services in Your Application (HTML) (PDF)
Explains how Ink Services works and how to customize handwriting recognition.
Guides 2003-07-24
Glyph Access Protocol (HTML) (日本語 HTML)
TN2079: How to support unencoded glyphs using the TSM, ATSUI and Cocoa.
Technical Notes 2003-05-06
Converting to Precomposed Unicode (HTML) (日本語 HTML)
QA1235: Describes how to convert a string to precomposed Unicode.
Technical Q&As 2003-02-07
ATSUICurveAccessDemo (HTML) (DMG) (ZIP)
Demonstrates low-level ATSUI APIs which allow access to raw glyph curve data.
Sample Code 2003-01-14
ATSUIDirectAccessDemo (HTML) (DMG) (ZIP)
Demonstrates some basic manipulations of the ATSUI DirectAccess api.
Sample Code 2003-01-14
BasicInputMethod (HTML) (DMG) (ZIP)
An input method implemented as a text service component for Mac OS X.
Sample Code 2003-01-14
NamingTableAccess (HTML) (DMG) (ZIP)
Digs out the contents of the NamingTable in a TrueType 'sfnt'.
Sample Code 2003-01-14
StyleFlatteningSample (HTML) (DMG) (ZIP)
Shows how to use the ATSUFlatten and ATSUUnflatten APIs.
Sample Code 2003-01-14
TimeZone.Daylight (HTML) (DMG) (ZIP)
Deprecated - Shows how to read the current location and time zone that is set in Date & Time.
Sample Code 2003-01-14
Understanding Text Input and the Text Services Manager in Carbon (HTML) (PDF)
Discusses keyboard input, including Unicode, and explains how events are routed and handled.
Guides 2002-12-11
Keyboard Layout Services Reference (HTML) (PDF)
Describes the C API for managing key-to-character mappings used to support various languages.
Reference 2002-11-18
FontSync Reference (HTML) (PDF)
Describes the C API for content-based font identification and comparison.
Reference 2002-10-01
Locale Utilities Reference (HTML) (PDF)
Describes the C API for supporting conventions of a specific language or region.
Reference 2002-01-24
Installing input methods on Mac OS X (HTML)
QA1054: Describes how to install and use input methods on Mac OS X.
Technical Q&As 2001-09-14
Improving ATSUI Text Drawing Performance (HTML)
QA1027: Talks about one way of improving ATSUI text drawing performance.
Technical Q&As 2001-04-17
Locating a Font's Home File (HTML) (日本語 HTML)
Deprecated - TB18: Lists the steps necessary to find the home file of a given font.
Technical Q&As 1996-02-15