Jump To:
Leopard Reference Library: Carbon
Developers can use the graphics & imaging frameworks in Mac OS X to implement custom 2D, 3D, and multimedia graphics features in their Carbon applications. Developers have access to a wide variety of graphics technologies, including Quartz 2D, Quartz Services, OpenGL, QuickTime, and the Mac OS X printing system.

View all Graphics & Imaging Reference Library.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Resource Type
Sort by
Date
Working with Quartz Composer (HTML)
Learn to build a sample composition without having to write code.
Articles 2006-02-13
Tiger Developer Overview Series: Developing with Core Image (HTML)
Learn how Core Image can help you take your graphics development to the next level.
Articles 2005-03-09
Image Unit Tutorial (HTML) (PDF)
Describes how to write image processing kernels and package them for distribution.
Guides 2009-05-06
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Guides 2008-10-15
Quartz Composer Programming Guide (HTML) (PDF)
Describes how to used the framework to load, play, and control compositions.
Guides 2008-10-15
Core Image Programming Guide (HTML) (PDF)
Provides an overview and explains how to use and create image filters and image units.
Guides 2008-06-09
PDF Kit Programming Guide (HTML) (PDF)
Introduces basic PDF concepts and describes how to use PDF Kit to display PDF documents in your application.
Guides 2007-12-11
Quartz 2D Programming Guide (HTML) (PDF)
Explains how to use Quartz 2D. Includes illustrations and sample code.
Guides 2007-12-11
Image I/O Programming Guide (HTML) (PDF)
Explains how to read and write image data using the Image I/O framework.
Guides 2007-07-02
Image Capture Applications Programming Guide (HTML) (PDF)
Describes the interaction between applications programs and image capture devices such as cameras and scanners.
Guides 2007-05-16
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Guides 2007-05-04
Quartz Programming Guide for QuickDraw Developers (HTML) (PDF)
Provides strategies to help Carbon programmers replace QuickDraw code with Quartz.
Guides 2006-09-05
Quartz Display Services Programming Topics (HTML) (PDF)
Shows how to configure and control display hardware using Quartz Display Services.
Guides 2006-06-28
Color Management Overview (HTML) (PDF)
Introduces basic concepts and defines color spaces.
Guides 2005-07-07
Supporting Printing in Your Carbon Application (HTML) (PDF)
Explains how to support printing in Carbon applications. Includes creating PDFs and porting from Mac OS 9.
Guides 2004-08-31
OpenGL Extensions Guide (HTML)
Information about OpenGL functionality supported in Mac OS X.
Guides 2003-09-10
Quartz Window Services Reference (HTML)
Describes the interface for capturing the contents of a window.
Reference 2009-01-15
Quartz Display Services Reference (HTML) (PDF)
Describes the interface for configuring and controlling display hardware.
Reference 2008-11-19
Core Image Kernel Language Reference (HTML) (PDF)
Describes the symbols for writing image-processing kernels.
Reference 2008-06-09
Font Manager Reference (HTML) (PDF)
Describes the C API for QuickDraw-based font access and management.
Reference 2007-12-11
Display Manager Reference (HTML) (PDF)
Deprecated - Describes the C API for dynamically changing the arrangement and display modes of attached monitors. Replaced by Quartz Display Services.
Reference 2007-12-04
AGL Reference (HTML) (PDF)
Describes the Apple graphics library for Carbon applications that use OpenGL.
Reference 2007-10-31
CGImageProperties Reference (HTML) (PDF)
Describes property constants for source and destination images.
Reference 2007-10-31
vImage Reference Collection (HTML) (PDF)
Describes the C programming interface for high-performance image processing.
Reference 2007-07-12
Color Picker Manager Reference (HTML) (PDF)
Describes the C API used in Classic Mac OS to solicit color choices from users.
Reference 2007-07-02
QuickDraw Reference (HTML) (PDF)
Describes the C API for the legacy two-dimensional drawing engine in Mac OS. Replaced by Quartz 2D.
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
CGL Reference (HTML) (PDF)
Describes Apple's low level interface for OpenGL contexts.
Reference 2007-06-28
HIGeometry Reference (HTML) (PDF)
Describes the C API that defines basic geometric objects for HIToolbox.
Reference 2007-06-11
Image I/O Reference Collection (HTML) (PDF)
Describes the API for reading and writing image data.
Reference 2007-04-09
Fonts Panel Reference (HTML) (PDF)
Describes the C API for providing a Fonts window in a Carbon application.
Reference 2007-02-26
Quartz 2D Reference Collection (HTML) (PDF)
Describes the C API for the native two-dimensional drawing engine in Mac OS X.
Reference 2006-12-18
Apple Game Sprockets Reference (HTML) (PDF)
Deprecated - Describes the programming interface defined by Game Sprockets. Replaced by Quartz Display Services.
Reference 2006-07-13
HTML Rendering Library Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for drawing HTML text and images in a window. Replaced by the Web Kit.
Reference 2006-07-13
Palette Manager Reference (HTML) (PDF)
Deprecated - Describes the legacy C API used to select colors for display devices limited to an 8-bit pixel depth.
Reference 2006-07-13
Picture Utilities Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for reading and modifying image data stored in PICT-formatted files. Replaced by Quartz2D.
Reference 2006-07-13
ColorSync Manager Reference (HTML) (PDF)
Describes the C API for ColorSync, the platform-independent color management system in Mac OS X.
Reference 2005-06-04
HIShape Reference (HTML) (PDF)
Describes the Carbon API for manipulating HIShape objects.
Reference 2004-06-28
2D Graphics Release Notes for Mac OS X v10.5 (HTML)
Describes the changes and issues related to Core Image and Quartz 2D in Mac OS X v10.5.
Release Notes 2008-04-08
Application Services Reference Update (HTML) (PDF)
Summarizes the symbols added to the Application Services framework.
Release Notes 2007-07-18
Carbon Resolution Independence Release Notes (HTML)
Release Notes 2005-04-29
Resolution Independent UI Release Notes (HTML)
Release Notes 2005-04-29
SampleScannerApp (HTML) (DMG) (ZIP)
This project implements a simple client accessing an ICA scanning device.
Sample Code 2008-05-07
CIColorTracking (HTML) (DMG) (ZIP)
An Objective-C applicaton that implements a GPU-based technique to find the location of a uniquely colored object in a scene
Sample Code 2008-04-24
Son of Grab (HTML) (DMG) (ZIP)
Shows how to use the new CGWindow to get window images from the Window Server.
Sample Code 2007-11-01
MassiveImage (HTML) (DMG) (ZIP)
Shows how to use a CGDataProvider to save a very large image with Image IO
Sample Code 2007-09-27
Quartz 2D Shadings (HTML) (DMG) (ZIP)
Shows how to use CGShading and CGGradient objects to draw simple gradients.
Sample Code 2007-08-31
Quartz 2D Transformer (HTML) (DMG) (ZIP)
Shows how to use Quartz 2D to manipulate an image
Sample Code 2007-06-21
CarbonQuartzComposer_TV (HTML) (DMG) (ZIP)
Demonstrates how to integrate Cocoa based QuartzComposer window into a Carbon based application
Sample Code 2006-10-02
Quartz2DBasics (HTML) (DMG) (ZIP)
Carbon and Cocoa sample code demonstrating some basic usage of the Quartz 2D API
Sample Code 2006-09-11
ComboBoxPrefs (HTML) (DMG) (ZIP)
Use CFPrefs to store URLs to images for use in a browser style combo box.
Sample Code 2005-10-04
MouseTracking (HTML) (DMG) (ZIP)
Sample code used in the WWDC 2005 Hands-On session 215 "Moving from QD to Quartz"
Sample Code 2005-06-01
QuartzLines (HTML) (DMG) (ZIP)
Drawing Lines using Quartz's CGPath & CGContextStrokeLineSegments functions.
Sample Code 2005-06-01
CarbonSketch (HTML) (DMG) (ZIP)
Core Graphics only example of a Sketch application implemented with HIToolbox. Shows 1x1-CGBitmapContext for hit-testing, printing.
Sample Code 2005-03-23
QuartzShapes (HTML) (DMG) (ZIP)
Example Quartz functions that implement equivalents to the QuickDraw PaintArc, FrameArc, PaintOval, FrameOval, PaintRect, and FrameRect
Sample Code 2005-03-08
GLCarbon1ContextPbuffer (HTML) (DMG) (ZIP)
Demostrates using OpenGL pixel buffers with a single shared context.
Sample Code 2004-03-26
GLCarbonSharedPbuffer (HTML) (DMG) (ZIP)
Demostrates sharing a single OpenGL pixel buffer with multiple other contexts.
Sample Code 2004-03-26
GLUTSurfaceTexture (HTML) (DMG) (ZIP)
Example of using the new glutSurfaceTexture.
Sample Code 2004-03-26
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Sample Code 2003-10-27
TextNameTool (HTML) (DMG) (ZIP)
A command line tool sample illustrating how to use various graphical facilities and services without a login.
Sample Code 2003-10-27
GlyphaIVOld (HTML) (DMG) (ZIP)
Deprecated - A basic game implementation in the spirit of Joust meant as demonstation of Sprocket usage.
Sample Code 2003-10-14
Palette and GWorld (HTML) (DMG) (ZIP)
Deprecated - Demonstrates the use of palette and color tables with GWorlds.
Sample Code 2003-10-10
Simple DrawSprocket (HTML) (DMG) (ZIP)
Deprecated - Simple use of DrawSprocket to set screen resolution and size.
Sample Code 2003-07-22
TE Over Background (HTML) (DMG) (ZIP)
Deprecated - A textEdit that shows old text editing over a colored background
Sample Code 2003-07-22
AGLSurfaceTexture (HTML) (DMG) (ZIP)
Example of render to texture/texture from surface using aglSurfaceTexture.
Sample Code 2003-07-07
Carbon GLSnapshot (HTML) (DMG) (ZIP)
Demonstrates the use of OpenGL with Quicktime to capture OpenGL content.
Sample Code 2003-07-07
Out of This GWorld (HTML) (DMG) (ZIP)
Deprecated - Demonstrates the use of offscreen GWorlds and palette animation to simulate animation.
Sample Code 2003-03-12
TubeTest (HTML) (DMG) (ZIP)
Deprecated - The program is a simple demonstration of how to use the Palette Manager in a color program.
Sample Code 2003-03-12
aglClipBufferRect (HTML) (DMG) (ZIP)
Shows the use of clip regions and buffer rects in AGL.
Sample Code 2003-01-14
CarbonQuartzDrawingWPrinting (HTML) (DMG) (ZIP)
Deprecated - Demonstrates mixing QuickDraw and Quartz 2D drawing both on screen and during printing.
Sample Code 2003-01-14
ColorBars (HTML) (DMG) (ZIP)
Shows how to enumerate, select, capture, manipulate, draw to, and release displays using the CGDirectDisplay API.
Sample Code 2003-01-14
ColorSyncDevices (HTML) (DMG) (ZIP)
Demonstrates how to use the new ColorSync Device Support APIs introduced with Mac OS X.
Sample Code 2003-01-14
ColorSyncDevices-Cocoa (HTML) (DMG) (ZIP)
Demonstrates how to use the new ColorSync Device Manager routines in the Cocoa environment.
Sample Code 2003-01-14
CTMClip (HTML) (DMG) (ZIP)
Deprecated - Shows how to manipulate the Quartz 2D Current Transform Matrix (CTM) for image drawing with clipping.
Sample Code 2003-01-14
CTMDemo (HTML) (DMG) (ZIP)
Deprecated - Shows how to manipulate the Quartz 2D Current Transform Matrix (CTM) for image drawing without clipping.
Sample Code 2003-01-14
FullScreen (HTML) (DMG) (ZIP)
Shows how to use BeginFullScreen and EndFullScreen to enter and exit full-screen mode.
Sample Code 2003-01-14
Mode (HTML) (DMG) (ZIP)
Shows how to enumerate displays and list the available modes for each display.
Sample Code 2003-01-14
ModeWhacker (HTML) (DMG) (ZIP)
Shows how to enumerate, select, capture, manipulate, and release displays using the CGDirectDisplay API.
Sample Code 2003-01-14
NewCCursor (HTML) (DMG) (ZIP)
Deprecated - Shows how to create a black and white 'CURS' and a color 'crsr' cursor resource by hand.
Sample Code 2003-01-14
Play Video Sample (HTML) (DMG) (ZIP)
Deprecated - The sample makes use of the RequestVideo sample code API.
Sample Code 2003-01-14
The Font Panel for Carbon API (HTML) (日本語 HTML)
TN2058: The API to display and interact with the Font Panel from Carbon applications on Mac OS X.
Technical Notes 2006-10-26
Coalesced Updates (HTML)
TN2133: How to achieve the maxium frame rate in your Mac OS X application
Technical Notes 2006-01-20
OpenGL Release Highlights - Mac OS X 10.3 Panther (HTML)
TN2131: Contains a list of bugs along with a short description on a release-by-release basis
Technical Notes 2005-02-04
Understanding and Detecting OpenGL Functionality (HTML)
TN2080: Discusses OpenGL API design, and how to access the full power of hardware and software renderers.
Technical Notes 2003-12-29
Mac OS X QuickDraw Performance (HTML) (日本語 HTML)
TN2051: Some of the trouble spots in the Mac OS X windowing system and how to avoid them.
Technical Notes 2003-02-13
The CGDirectPalette API (HTML) (日本語 HTML)
TN2008: Provides a reference for the CGDirectPalette API on Mac OS X
Technical Notes 2000-11-08
Getting the pixel data from a CGImage object (HTML)
QA1509: Describes how to access the pixel data of a CGImage object
Technical Q&As 2008-08-27
Requirements for Quartz GL (HTML)
QA1536: Describes the requirements for enabling Quartz GL.
Technical Q&As 2008-08-08
AGL Changes for Mac OS X Leopard (v. 10.5) (HTML)
QA1523: This Q&A describes the new and deprecated APIs for Apple OpenGL (AGL)
Technical Q&As 2008-01-04
How to measure CG text (HTML)
QA1051: Explains how to measure Core Graphics text.
Technical Q&As 2007-08-02
CGBitmapContextCreate Supported Color Spaces (HTML)
QA1037: Lists the color space and alpha info combinations currently supported by CGBitmapContextCreate.
Technical Q&As 2007-07-18
ColorSync Color Matching on Intel-based Macs (HTML)
QA1464: Describes special considerations for byte ordering when performing ColorSync color matching on Intel-based Macs
Technical Q&As 2006-03-16
Compression Sessions - Enabling muti-pass encoding (HTML)
QA1450: Describes how to enable multi-pass encoding when using ICM compression sessions.
Technical Q&As 2006-01-12
Debugging Graphics with QuartzDebug (HTML) (日本語 HTML)
QA1236: Explains how to use QuartzDebug to debug graphics issues.
Technical Q&As 2006-01-12
Context Sharing Tips (HTML) (日本語 HTML)
QA1248: How to correctly share OpenGL contexts and what the limits on this sharing are.
Technical Q&As 2005-02-07
CGImageRef contents are immutable (HTML) (日本語 HTML)
QA1276: Explains that CGImageRef contents are considered immutable once created.
Technical Q&As 2003-07-17
Updating OpenGL Contexts (HTML) (日本語 HTML)
QA1209: When and why to update an OpenGL context in response to system and user actions.
Technical Q&As 2003-06-19
Is ColorSync thread safe? (HTML) (日本語 HTML)
QA1261: Discusses ColorSync thread-safety issues.
Technical Q&As 2003-04-17
How do I use PMSessionGetGraphicsContext to get a CGContextRef? (HTML) (日本語 HTML)
Deprecated - QA1216: Describes how to use PMSessionSetDocumentFormatGeneration and PMSessionGetGraphicsContext to get a CGContextRef for printing.
Technical Q&As 2003-02-25
Quartz 2D Thread Safety (HTML) (日本語 HTML)
QA1238: Explains the thread-safety issues for the Quartz 2D API.
Technical Q&As 2003-02-25