Jump To:
Leopard Reference Library
Graphics and imaging on Mac OS X consists of three main developer technologies: Quartz, an advanced drawing engine and windowing environment; OpenGL, an Apple implementation of this 3D graphics industry-standard API; and QuickTime, the cross-platform multimedia technology for handling video, sound, and text.

A guided introduction for developers new to Mac OS X graphics and imaging.   Essential information for developers working with graphics and imaging.   C and Objective-C API references organized by framework.
Document Descriptions
On Off
Display

Sorted by
Title
Sort by
Topic
Sort by
Resource Type
Sort by
Date
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.
Carbon, Games, Quartz Release Notes 2008-04-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)
Carbon, Games, OpenGL Technical Q&As 2008-01-04
AGL Reference (HTML) (PDF)
Describes the Apple graphics library for Carbon applications that use OpenGL.
Carbon, OpenGL Reference 2007-10-31
AGL Reference Update (HTML) (PDF)
Summarizes the symbols added to the AGL framework.
OpenGL Release Notes 2007-07-18
aglClipBufferRect (HTML) (DMG) (ZIP)
Shows the use of clip regions and buffer rects in AGL.
Carbon, OpenGL Sample Code 2003-01-14
AGLSurfaceTexture (HTML) (DMG) (ZIP)
Example of render to texture/texture from surface using aglSurfaceTexture.
Carbon, OpenGL Sample Code 2003-07-07
Animating the frame of a CALayer. (HTML)
QA1620: Explains how the frame property of a layer interacts with animations.
Cocoa, Quartz Technical Q&As 2008-10-24
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Carbon, Cocoa, Games, Quartz Guides 2008-10-15
Animation Programming Guide for Cocoa (HTML) (PDF)
Describes how to use Cocoa animation objects to enhance user interface transitions.
Cocoa Guides 2006-05-23
Apple Game Sprockets Reference (HTML) (PDF)
Deprecated - Describes the programming interface defined by Game Sprockets. Replaced by Quartz Display Services.
Carbon Reference 2006-07-13
Apple RGB and Generic RGB profiles explained (HTML)
QA1430: Discusses use of the Apple RGB and Generic RGB profiles for untagged data on Mac OS X
ColorSync Technical Q&As 2005-10-17
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.
Typography Guides 2007-12-11
Apple Type Services for Fonts Reference (HTML) (PDF)
Describes the C API for ATS-based font access and management.
Typography Reference 2007-12-11
Application Kit Framework Reference (HTML) (PDF)
Describes the interface for all things related to an application's user interface.
Cocoa Reference 2008-11-19
Application Services Framework Reference (HTML) (PDF)
Describes the API for a number of services--such as Quartz 2D and ATSUI--that are essential to Carbon applications.
General Reference 2007-10-31
Application Services Reference Update (HTML) (PDF)
Summarizes the symbols added to the Application Services framework.
Carbon Release Notes 2007-07-18
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
Availability of Quartz Composer Patches in Web Kit (HTML)
QA1505: Details which Quartz Composer patches are available in Web Kit
Carbon, Cocoa, Quartz Technical Q&As 2007-03-05
BasicCocoaAnimations (HTML) (DMG) (ZIP)
"BasicCocoaAnimations" demonstrates the use of the animator proxy to easily animate Cocoa views and windows.
Cocoa Sample Code 2007-06-11
BlitNoVBL (HTML) (DMG) (ZIP)
Shows how to draw directly to the screen without syncing to the VBL of the monitor.
Hardware & Drivers, Performance, Quartz Sample Code 2003-01-14
BlitVBL (HTML) (DMG) (ZIP)
Shows how to have Mac OS X try its best to sync to the VBL for you.
Hardware & Drivers, Performance, Quartz Sample Code 2003-01-14
BoingX (HTML) (DMG) (ZIP)
Shows off using Quartz Extreme to provide borderless OpenGL content on the desktop.
Cocoa, OpenGL Sample Code 2007-11-06
Boinx Starts with Sample Code: FotoMagico Is a Powerful Digital Slideshow (HTML)
Starting with Apple sample code, tools and technologies, Boinx wrote FotoMagico in a matter of months.
General, OpenGL Articles 2007-12-11
Building WingNuts in Xcode with OpenGL: Freeverse Creates a Great Mac-only Game (HTML)
Read how Freeverse created their award-winning Mac-only game, WingNuts 2, using Core Image, Interface Builder, Xcode, and OpenGL.
Games, OpenGL Articles 2007-05-15
CAAction Protocol Reference (HTML) (PDF)
Describes the interface for receiving actions initiated by a layer.
Cocoa, Quartz Reference 2007-07-24
CAAnimation Class Reference (HTML) (PDF)
Describes the interface for managing the actions and timing of an animation.
Cocoa, Quartz Reference 2007-10-31
CAAnimationGroup Class Reference (HTML) (PDF)
Describes a grouping of multiple animations into a single animation.
Cocoa, Quartz Reference 2008-03-11
CABasicAnimation Class Reference (HTML) (PDF)
Describes the basic interpolation of a layer property.
Cocoa, Quartz Reference 2007-07-24
CAConstraint Class Reference (HTML) (PDF)
Describes a single geometric constraint between two layers.
Cocoa, Quartz Reference 2007-07-24
CAConstraintLayoutManager Class Reference (HTML) (PDF)
Describes a layout manager that applies a set of constraints to a layer tree.
Cocoa, Quartz Reference 2007-12-11
CAKeyframeAnimation Class Reference (HTML) (PDF)
Describes an animation that provides keyframe interpolation of a layer property.
Cocoa, Quartz Reference 2007-07-24
CALayer Class Reference (HTML) (PDF)
Describes a node of animated visual content.
Cocoa, Quartz Reference 2009-02-04
CALayerEssentials (HTML) (DMG) (ZIP)
Demonstrates the basics of setting up various Core Animation layers
Cocoa, Games, OpenGL, Quartz Sample Code 2008-09-30
CALayoutManager Protocol Reference (HTML) (PDF)
Describes the interface for receiving requests to arrange a layout tree.
Cocoa, Quartz Reference 2007-07-24
CalcCMask and SeedCFill in Carbon (HTML) (日本語 HTML)
QD62: Explains how to use CalcCMask and SeedCFill in Carbon even though Carbon doesn't support OpenPort.
Carbon Technical Q&As 2000-11-08
CAMediaTiming Protocol Reference (HTML) (PDF)
Describes the interface for the time behavior of an animation.
Cocoa, Quartz Reference 2009-03-04
CAMediaTimingFunction Class Reference (HTML) (PDF)
Describes the pacing of an animation as a timing curve.
Cocoa, Quartz Reference 2008-07-11
CAOpenGLLayer Class Reference (HTML) (PDF)
Describes a layer that acts as a target for OpenGL commands.
Cocoa, Quartz Reference 2008-03-11
CAPropertyAnimation Class Reference (HTML) (PDF)
Describes the interface for manipulating values of layer properties.
Cocoa, Quartz Reference 2007-07-24
Carbon Full Screen Conundrums (HTML)
QA1068: Describes the available Mac OS X DrawSprocket services.
Games Technical Q&As 2001-08-20
Carbon GLSnapshot (HTML) (DMG) (ZIP)
Demonstrates the use of OpenGL with Quicktime to capture OpenGL content.
OpenGL Sample Code 2003-07-07
Carbon Printing Reference (HTML) (PDF)
Describes the C API used by Carbon applications to provide a user interface for printing.
Printing Reference 2007-07-24
Carbon Resolution Independence Release Notes (HTML)
Carbon Release Notes 2005-04-29
CarbonCocoaCoreImageTab (HTML) (DMG) (ZIP)
Carbon-based application creates a Cocoa-based web window which used CoreImage filters to transition between tabbed WebViews
Carbon, Cocoa Sample Code 2006-07-25
CarbonQuartzComposer_TV (HTML) (DMG) (ZIP)
Demonstrates how to integrate Cocoa based QuartzComposer window into a Carbon based application
Cocoa, Video Sample Code 2006-10-02
CarbonQuartzDrawingWPrinting (HTML) (DMG) (ZIP)
Deprecated - Demonstrates mixing QuickDraw and Quartz 2D drawing both on screen and during printing.
Carbon, Printing, Quartz Sample Code 2003-01-14
CarbonSketch (HTML) (DMG) (ZIP)
Core Graphics only example of a Sketch application implemented with HIToolbox. Shows 1x1-CGBitmapContext for hit-testing, printing.
Carbon, Quartz Sample Code 2005-03-23
CARenderer Class Reference (HTML) (PDF)
Describes an object that draws a layer to a Core Graphics context.
Cocoa, Quartz Reference 2008-04-30
CAScrollLayer Class Reference (HTML) (PDF)
Describes a layer that displays a scrollable portion of another layer.
Cocoa, Quartz Reference 2007-07-24
CATextLayer Class Reference (HTML) (PDF)
Describes a layer that draws text.
Cocoa, Quartz Reference 2007-12-11
CATiledLayer Class Reference (HTML) (PDF)
Describes a layer that draws tiles of content as needed.
Cocoa, Quartz Reference 2007-07-24
CATransaction Class Reference (HTML) (PDF)
Describes a batch of Core Animation updates that are applied to a render tree atomically.
Cocoa, Quartz Reference 2007-07-24
CATransition Class Reference (HTML) (PDF)
Describes the class that provides transition animations to layers.
Cocoa, Quartz Reference 2007-10-31
CGAffineTransform Reference (HTML) (PDF)
Describes the functions for creating and applying affine transformations.
Quartz Reference 2008-04-08
CGBitmapContext Reference (HTML) (PDF)
Describes an opaque type for managing drawing operations in a bitmap.
Quartz Reference 2007-06-28
CGBitmapContextCreate Supported Color Spaces (HTML)
QA1037: Lists the color space and alpha info combinations currently supported by CGBitmapContextCreate.
Carbon, Cocoa, Games, Quartz Technical Q&As 2007-07-18
CGColor Reference (HTML) (PDF)
Describes a representation of color and opacity (alpha value).
Quartz Reference 2006-12-22
CGColorSpace Reference (HTML) (PDF)
Describes an opaque type for specifying color space information.
Quartz Reference 2008-09-09
CGContext Bounds (HTML)
QA1048: Explains how to determine the bounds of a CGContext.
Carbon, Printing, Quartz Technical Q&As 2001-07-02
CGContext Reference (HTML) (PDF)
Describes a Quartz 2D drawing destination.
Quartz Reference 2008-04-08
CGContextAddLineToPoint, CGContextAddCurveToPoint, et. al. (HTML)
QA1049: Explains why the CGContextAddXYZ APIs don't draw anything immediately.
Carbon, Cocoa, Printing, Quartz Technical Q&As 2001-07-02
CGContextClosePath (HTML)
QA1046: Explains when you should call CGContextClosePath.
Carbon, Cocoa, Printing, Quartz Technical Q&As 2001-10-02
CGDataConsumer Reference (HTML) (PDF)
Describes an opaque data type for writing image or PDF data.
Quartz Reference 2006-12-22
CGDataProvider Reference (HTML) (PDF)
Describes an opaque data type for reading image data.
Quartz Reference 2009-01-06
CGDrawPicture (HTML) (DMG) (ZIP)
Deprecated - Shows how to use the QDPictDrawToCGContext API.
Cocoa, Quartz Sample Code 2003-01-14
CGFont Reference (HTML) (PDF)
Describes a representation of a font.
Quartz Reference 2007-07-17
CGFunction Reference (HTML) (PDF)
Describes a facility for defining and using callback functions.
Quartz Reference 2006-12-22
CGGamma (HTML) (DMG) (ZIP)
Shows how to use CGDirectDisplay calls to manipulate display gamma tables.
Games, Quartz Sample Code 2003-01-14
CGGeometry Reference (HTML) (PDF)
Describes structures and functions for manipulating points, rectangles, and sizes.
Quartz Reference 2009-01-06
CGGLContext Reference (HTML) (PDF)
Describes a graphics context for OpenGL commands. Not recommended
Quartz Reference 2006-12-22
CGGradient Reference (HTML) (PDF)
Describes the functions that create and operate on Quartz gradient objects.
Quartz Reference 2007-05-01
CGImage Reference (HTML) (PDF)
Describes a representation of an image.
Quartz Reference 2008-04-08
CGImageDestination Reference (HTML) (PDF)
Describes the opaque type for writing image data.
Quartz Reference 2007-05-04
CGImageProperties Reference (HTML) (PDF)
Describes property constants for source and destination images.
Carbon, Quartz Reference 2007-10-31
CGImageRef contents are immutable (HTML) (日本語 HTML)
QA1276: Explains that CGImageRef contents are considered immutable once created.
Carbon, Cocoa, Quartz Technical Q&As 2003-07-17
CGImageSource Reference (HTML) (PDF)
Describes the opaque type for reading image data.
Quartz Reference 2007-12-04
CGL Reference (HTML) (PDF)
Describes Apple's low level interface for OpenGL contexts.
Carbon, OpenGL Reference 2007-06-28
CGLayer Reference (HTML) (PDF)
Describes the opaque type for creating and drawing to a Quartz layer.
Quartz Reference 2006-12-22
CGPath Reference (HTML) (PDF)
Describes a vector-based path consisting of line and curve segments.
Quartz Reference 2006-12-22
CGPattern Reference (HTML) (PDF)
Describes a representation of a fill pattern.
Quartz Reference 2006-12-22
CGPDFArray Reference (HTML) (PDF)
Describes an array structure in a PDF document.
Quartz Reference 2008-10-15
CGPDFContentStream Reference (HTML) (PDF)
Describes the appearance of a PDF page.
Quartz Reference 2008-10-15
CGPDFContext Reference (HTML) (PDF)
Describes a Quartz PDF drawing destination.
Quartz Reference 2007-10-31
CGPDFDictionary Reference (HTML) (PDF)
Describes a dictionary structure in a PDF document.
Quartz Reference 2008-10-15
CGPDFDocument Reference (HTML) (PDF)
Describes a document containing PDF data.
Quartz Reference 2006-12-22
CGPDFObject Reference (HTML) (PDF)
Describes a PDF object in a PDF document.
Quartz Reference 2008-10-15
CGPDFOperatorTable Reference (HTML) (PDF)
Describes a collection of PDF operators and associated callback functions.
Quartz Reference 2009-03-04
CGPDFPage Reference (HTML) (PDF)
Describes a page in a PDF document.
Quartz Reference 2008-04-08
CGPDFScanner Reference (HTML) (PDF)
Describes an opaque type for parsing a PDF content stream.
Quartz Reference 2008-10-15
CGPDFStream Reference (HTML) (PDF)
Describes a PDF data stream, which typically represents an image or a page description.
Quartz Reference 2008-10-15
CGPDFString Reference (HTML) (PDF)
Describes a character string in a PDF document.
Quartz Reference 2008-10-15
CGPSConverter Reference (HTML) (PDF)
Describes an opaque type for converting PostScript data to PDF data.
Quartz Reference 2006-12-22
CGShading Reference (HTML) (PDF)
Describes a gradient fill pattern.
Quartz Reference 2006-12-22
CIAnnotation (HTML) (DMG) (ZIP)
Image annotation application using Core Image Filters. Demonstrates creation and usage of Image Units.
Cocoa, OpenGL, Quartz Sample Code 2005-08-01
CIColor Additions Reference (HTML) (PDF)
Describes additions to support Cocoa color information.
Cocoa, Quartz Reference 2006-05-23
CIColor Class Reference (HTML) (PDF)
Describes the class used to manage color values and color spaces for Core Image filters.
Cocoa, Games, Quartz Reference 2006-12-05
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
Carbon, Cocoa, Games, Quartz Sample Code 2008-04-24
CIContext Class Reference (HTML) (PDF)
Describes the class that provides an evaluation context for rendering a Core Image image through Quartz 2D or OpenGL.
Cocoa, Games, Quartz Reference 2007-03-16
CIFilter Class Reference (HTML) (PDF)
Describes the class that processes image data and produces a Core Image image as output.
Cocoa, Games, Quartz Reference 2007-12-11