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
Display

Sort by
Title
Sorted by
Resource Type
Sort by
Date
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
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
ATSUI Programming Guide (HTML) (PDF)
Explains how to lay out, process, and draw Unicode text.
Guides 2007-07-10
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
Dictionary Services Programming Guide (HTML) (PDF)
Explains how to create a dictionary and access it programmatically.
Guides 2007-05-30
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
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
Using Ink Services in Your Application (HTML) (PDF)
Explains how Ink Services works and how to customize handwriting recognition.
Guides 2003-07-24
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
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
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
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
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
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
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
Unicode Utilities Reference (HTML) (PDF)
Describes the C API that allows applications and input methods to operate on Unicode text.
Reference 2006-01-10
Text Services Manager Reference (HTML) (PDF)
Describes the C API for communicating between client applications and provider modules.
Reference 2005-11-09
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
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
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
CoreTextArc (HTML) (DMG) (ZIP)
Illustrates the use of fonts, lines, and runs in a CoreText text drawing Carbon application.
Sample Code 2007-06-04
CoreTextTest (HTML) (DMG) (ZIP)
Shows how to handle the CoreText objects to display text.
Sample Code 2006-12-19
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
HITextViewDemo (HTML) (DMG) (ZIP)
Overview of basic HITextView functionality, including Tiger's new font & spelling panel support.
Sample Code 2005-06-01
MLTE_CustomScrolling (HTML) (DMG) (ZIP)
Shows how to implement MLTE's custom scrolling functionality
Sample Code 2004-10-15
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
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
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
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
Glyph Access Protocol (HTML) (日本語 HTML)
TN2079: How to support unencoded glyphs using the TSM, ATSUI and Cocoa.
Technical Notes 2003-05-06
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
Enumerating fonts with ATS (HTML)
QA1471: Describes the different ATS font enumeration methods
Technical Q&As 2006-04-14
Sorting Like the Finder (HTML)
QA1159: Shows how to sort strings like the Finder's list view.
Technical Q&As 2004-10-27
SetFontInfoForSelection incorrect prototype (HTML)
QA1375: Describes the incorrect prototyping of the SetFontInfoForSelection API and gives a workaround.
Technical Q&As 2004-10-04
Converting to Precomposed Unicode (HTML) (日本語 HTML)
QA1235: Describes how to convert a string to precomposed Unicode.
Technical Q&As 2003-02-07
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