Member Login Log In | Not a Member? Contact ADC
Jump To:
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

Sort by
Title
Sort by
Topic
Sort by
Resource Type
Sorted by
Date
Quartz2DBasics (HTML) (DMG) (ZIP)
Carbon and Cocoa sample code demonstrating some basic usage of the Quartz 2D API
Carbon, Cocoa, Quartz Sample Code 2006-09-11
Handling Unicode Text Editing With MLTE (HTML) (PDF)
Explains how to use Apple's multilingual text engine.
Typography Guides 2006-09-05
Quartz Programming Guide for QuickDraw Developers (HTML) (PDF)
Provides strategies to help Carbon programmers replace QuickDraw code with Quartz.
Carbon, Quartz Guides 2006-09-05
QCFundamentals (HTML) (DMG) (ZIP)
Demonstrates Coordinate, Interpolation, and Iterative systems in Quartz Composer with an amusing animation
Cocoa, OpenGL, Quartz, Tools Sample Code 2006-08-07
QCGalaxy (HTML) (DMG) (ZIP)
Demonstrates use of Particle Systems and Core Image Filters in Quartz Composer
Cocoa, OpenGL, Quartz, Tools Sample Code 2006-08-07
IKSlideshowDemo (HTML) (DMG) (ZIP)
This small sample project shows how to use the ImageKit Slideshow to display images or PDFs.
Cocoa, Quartz Sample Code 2006-08-01
LiveVideoMixer3 (HTML) (DMG) (ZIP)
LiveVideoMixer3 is extended to support Video In via QTKit
Cocoa, QuickTime Sample Code 2006-08-01
SetCustomIcon (HTML) (DMG) (ZIP)
Demonstrates how to programmatically set a custom icon for a file, folder, or disk.
Carbon Sample Code 2006-08-01
PDF Annotation Editor (HTML) (DMG) (ZIP)
Demonstrates how to use PDF Kit to examine, edit, and create PDF annotations.
Cocoa Sample Code 2006-07-31
PDF Calendar (HTML) (DMG) (ZIP)
Demonstrates how to use PDF Kit to create PDF content.
Cocoa Sample Code 2006-07-31
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
PMPrinterPrintWithFile (HTML) (DMG) (ZIP)
How to send files, for example PostScript and PDF, directly to the printer. Replaces the pict-ps path.
Printing Sample Code 2006-07-18
GLSLShowpiece (HTML) (DMG) (ZIP)
GLSLShowpiece demonstrates several Vertex and Fragment shaders
Cocoa, Games, OpenGL Sample Code 2006-07-17
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
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.
Carbon 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.
Carbon 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.
Carbon Reference 2006-07-13
QTPixelBufferVCToCGImage (HTML) (DMG) (ZIP)
Demonstrates using QTPixelBufferContextCreate with NewMovieFromProperties to output pixel buffers from a movie and draw them.
Quartz, Video Sample Code 2006-07-07
Core Image Kernel Language Reference (HTML) (PDF)
Describes the symbols for writing image-processing kernels.
Carbon, Cocoa, Games, Quartz Reference 2006-06-28
Printing Programming Topics for Cocoa (HTML) (PDF)
Explains how to support printing in Cocoa applications.
Cocoa, Printing Guides 2006-06-28
Quartz Display Services Programming Topics (HTML) (PDF)
Shows how to configure and control display hardware using Quartz Display Services.
Carbon, Quartz Guides 2006-06-28
Animation Programming Guide for Cocoa (HTML) (PDF)
Describes how to use Cocoa animation objects to enhance user interface transitions.
Cocoa Guides 2006-05-23
CIColor Additions Reference (HTML) (PDF)
Describes the API for supporting Cocoa colors in Core Image.
Cocoa, Quartz Reference 2006-05-23
NSClipView Class Objective-C Reference (HTML) (PDF)
Describes the class that contains and scrolls the document view of a scroll view.
Cocoa Reference 2006-05-23
NSColor Class Reference (HTML) (PDF)
Describes the class used to represent a color defined in a color space.
Cocoa Reference 2006-05-23
NSScrollView Class Reference (HTML) (PDF)
Describes the class that allows the user to scroll a document view that's too large to display in its entirety.
Cocoa Reference 2006-05-23
NSViewAnimation Class Reference (HTML) (PDF)
Describes the class for animating views and windows.
Cocoa Reference 2006-05-23
PDFAnnotationCircle Class Reference (HTML) (PDF)
Describes the class for manipulating circle annotations in PDF documents.
Cocoa, Quartz Reference 2006-05-23
PDFAnnotationInk Class Reference (HTML) (PDF)
Describes the class for manipulating ink annotations in PDF documents.
Cocoa, Quartz Reference 2006-05-23
PDFAnnotationLink Class Reference (HTML) (PDF)
Describes the class for manipulating link annotations in PDF documents.
Cocoa, Quartz Reference 2006-05-23
PDFAnnotationMarkup Class Reference (HTML) (PDF)
Describes the class for manipulating markup annotations (highlighting, underlining, and so on) in PDF documents.
Cocoa, Quartz Reference 2006-05-23
PDFAnnotationSquare Class Reference (HTML) (PDF)
Describes the class for manipulating square annotations in PDF documents.
Cocoa, Quartz Reference 2006-05-23
PDFBorder Class Reference (HTML) (PDF)
Describes the class for creating and manipulating borders around annotations in PDF documents.
Cocoa, Quartz Reference 2006-05-23
LiveVideoMixer2 (HTML) (DMG) (ZIP)
An updated LiveVideoMixer with DV out over FireWire
OpenGL, QuickTime Sample Code 2006-05-05
Fractal Performance (HTML) (DMG) (ZIP)
Three fractal applications that show various bottlenecks and how they can be fixed.
Java, Performance Sample Code 2006-04-17
Drawing Performance Guidelines (HTML) (PDF)
Guidelines for improving the speed of drawing code.
Performance, Tools Guides 2006-04-04
ColorSync Color Matching on Intel-based Macs (HTML)
QA1464: Describes special considerations for byte ordering when performing ColorSync color matching on Intel-based Macs
ColorSync Technical Q&A 2006-03-16
DVD Playback Services Programming Guide (HTML) (PDF)
Explains how to use DVD Playback Services to add DVD-Video playback features to applications.
Video Guides 2006-03-08
Making the most of Cocoa bindings in Quartz Composer (HTML)
TN2146: Describes how to best use Cocoa bindings with Quartz Composer.
Cocoa, Quartz Technical Note 2006-03-03
The "packages" node in the device tree (HTML)
HW90: Describes the "packages" node in the Open Firmware device tree.
Hardware & Drivers Technical Q&A 2006-02-22
Taking Advantage of PDF Kit in Your Cocoa Application (HTML)
Learn to handle PDF documents in your Cocoa application without writing a lot of custom code.
Cocoa Articles 2006-02-20
QTCarbonCoreImage101 (HTML) (DMG) (ZIP)
Demonstrates how to render QuickTime Movies using Core Image filters and the new video pipeline.
QuickTime Sample Code 2006-02-14
Working with Quartz Composer (HTML)
Learn to build a sample composition without having to write code.
Carbon, Cocoa, Quartz Articles 2006-02-13
Mac OS X Printing System Overview (HTML) (PDF)
Introduces Apple's printing architecture. Includes a road map for developing software.
Printing Guides 2006-02-07
Coalesced Updates (HTML)
TN2133: How to achieve the maxium frame rate in your Mac OS X application
Performance Technical Note 2006-01-20
Debugging Graphics with QuartzDebug (HTML) (日本語 HTML)
QA1236: Explains how to use QuartzDebug to debug graphics issues.
Quartz Technical Q&A 2006-01-12
Decompression Sessions - Setting codec accuracy and field mode (HTML)
QA1460: Describes how to set codec accuracy and field mode options when creating a decompression sessions.
QuickTime Technical Q&A 2006-01-12
QuickTime Compression and Decompression Guide (HTML) (PDF)
Describes the QuickTime data compression and decompression technologies.
QuickTime, Video Guides 2006-01-10
WebKitCIPlugIn (HTML) (DMG) (ZIP)
This sample WebKit plugin for Safari demonstrate how to use CoreImage in a HTML page.
OpenGL Sample Code 2005-11-28
CocoaDVDPlayer (HTML) (DMG) (ZIP)
Demonstrates how to use DVD Playback Services to play DVD-Video media.
Video Sample Code 2005-11-04
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&A 2005-10-17
Compression Sessions - Configuring codec quality settings (HTML)
QA1444: Discusses how to set encoding quality for a Compression Sequence
QuickTime Technical Q&A 2005-10-17
Creating color spaces that ensure color matching. (HTML)
QA1396: How to create color spaces that ensure color matching.
ColorSync, Quartz Technical Q&A 2005-10-04
Getting images in and out from Quartz Composer compositions (HTML)
TN2143: Describes how to efficiently pass images into and out of Quartz Composer
Cocoa, Quartz Technical Note 2005-10-04
QTQuartzPlayer (HTML) (DMG) (ZIP)
QTQuartzPlayer demonstrates how to render QuickTime Movies and live video with OpenGL and CoreVideo.
QuickTime Sample Code 2005-10-04
Taking Advantage of the Accelerate Framework (HTML)
Learn how your application can run on PowerPC- or Intel-based Macs without processor-specific customization.
Performance Articles 2005-10-03
Implementing a CVFillExtendedPixelsCallBack (HTML)
QA1440: Discusses how you implement a Core Video custom extended pixel fill callback function.
QuickTime Technical Q&A 2005-09-06
Registering custom pixel formats with QuickTime and Core Video (HTML)
QA1401: Discusses how to register custom pixel formats with QuickTime & Core Video with QuickTime 7.
QuickTime Technical Q&A 2005-09-06
Obtaining 16 Bits-Per-Color Data with CUPS Raster Printing (HTML)
TN2149: Obtaining 16 Bits-Per-Color Data with CUPS Raster Printing
Printing Technical Note 2005-08-24
Specifiying if the CPU or the GPU should be used for rendering. (HTML)
QA1416: Which processor will be used for rendering in Core Image and how to affect it.
Hardware & Drivers, Performance Technical Q&A 2005-08-16
QuickTime Movie Playback Programming Guide (HTML) (PDF)
Describes how to open and play QuickTime movies using the Carbon and QuickTime API.
QuickTime Guides 2005-08-11
QuickTime Overview (HTML) (PDF)
Introduces the main concepts and services of QuickTime.
QuickTime, Video Guides 2005-08-11
ColorSync on Mac OS X (HTML) (日本語 HTML)
TN2035: Describes ColorSync, which is fundamentally integrated into Mac OS X.
ColorSync, Printing, Quartz Technical Note 2005-08-10
PDFKitLinker2 (HTML) (DMG) (ZIP)
Demonstrates many aspects of PDFKit including navigation, display modes, searching, and PDFView subclassing.
Cocoa Sample Code 2005-08-10
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
VideoViewer (HTML) (DMG) (ZIP)
Simple example of video rendering using QuickTime visual contexts, OpenGL, Core Video and Core Image.
Performance, Video Sample Code 2005-08-01
QTCoreImage101 (HTML) (DMG) (ZIP)
Demonstrates how to render a QuickTime Movie using Core Image filters and the new video pipeline.
Cocoa, Quartz, QuickTime, Video Sample Code 2005-07-19
Color Management Overview (HTML) (PDF)
Introduces basic concepts and defines color spaces.
Carbon, Cocoa, ColorSync Guides 2005-07-07
Creating Printing Presets for iPhoto (HTML) (PDF)
Rules for creating and installing printer-specific collections of settings. Includes a sample file.
Printing Guides 2005-07-07
Using PostScript Printer Description Files (HTML) (PDF)
Information for printer vendors. Includes installing files, PPD/PDE binding, and grouping features.
Printing Guides 2005-07-07
Quartz Composer QCTV (HTML) (DMG) (ZIP)
Shows how to build a fake TV system using Quartz Composer as the foundation motion graphics.
Cocoa, OpenGL, Quartz, QuickTime Sample Code 2005-07-06
Efficiently using Quartz Composer compositions with QuickTime (HTML)
TN2145: Describes how to best use Quartz Composer compositions in a QuickTime environment.
Quartz, QuickTime Technical Note 2005-07-05
When does the RSS Feed patch in Quartz Composer refreshes its contents? (HTML)
QA1425: Explains how the RSS Feed patch in Quartz Composer refreshes its contents.
Quartz Technical Q&A 2005-06-24
What is the Timebase submenu available in the contextual menu of some patches in Quartz Composer? (HTML)
QA1427: Describes the timebase system used by patches in Quartz Composer.
Quartz, Tools Technical Q&A 2005-06-15
Reducer (HTML) (DMG) (ZIP)
Simple utility for rescaling bitmapped images. Demonstrates use of Core Image, NSAnimation, view drawing redirection.
Cocoa Sample Code 2005-06-06
UnsharpMask (HTML) (DMG) (ZIP)
Demonstrates how to build Automator actions using Cocoa frameworks.
Cocoa Sample Code 2005-06-06
ColorSync Manager Reference (HTML) (PDF)
Describes the C API for ColorSync, the platform-independent color management system in Mac OS X.
Carbon, ColorSync Reference 2005-06-04
How can I optimize a Quartz Composer composition depending on the hardware it runs on? (HTML)
QA1433: Explains how to design compositions that adapt to the hardware limitations.
Cocoa, Performance, Quartz Technical Q&A 2005-06-01
JustDraw (HTML) (DMG) (ZIP)
Sample code being used in the WWDC 2005 Hands-On session 215 "Moving from QD to Quartz"
Carbon, Quartz Sample Code 2005-06-01
Link Snoop (HTML) (DMG) (ZIP)
Shows how to use PDFKit to scan for and highlight link annotations in PDFs.
Cocoa Sample Code 2005-06-01
MouseTracking (HTML) (DMG) (ZIP)
Sample code used in the WWDC 2005 Hands-On session 215 "Moving from QD to Quartz"
Carbon, Quartz Sample Code 2005-06-01
MyPhoto (HTML) (DMG) (ZIP)
Demonstrates preferred techniques for working with the Image Capture APIs
Carbon, Cocoa Sample Code 2005-06-01
Quartz Composer Live DV (HTML) (DMG) (ZIP)
Shows how to export a Quartz Composer composition as a real-time DV stream on the FireWire port.
Cocoa, OpenGL, Quartz, QuickTime Sample Code 2005-06-01
Quartz Composer Matrix (HTML) (DMG) (ZIP)
Shows how to use Quartz Composer to display a QuickTime movie as a series of frames in a 3D world.
Cocoa, OpenGL, Quartz, QuickTime Sample Code 2005-06-01
Quartz Composer Offline Rendering (HTML) (DMG) (ZIP)
Shows how to render a Quartz Composer composition as a series of images using an OpenGL pBuffer.
Cocoa, OpenGL, Quartz Sample Code 2005-06-01
Quartz Composer Texture (HTML) (DMG) (ZIP)
Shows how to use a Quartz Composer composition as an OpenGL texture.
Cocoa, Games, OpenGL, Quartz Sample Code 2005-06-01
Quartz Composer WWDC 2005 Composition (HTML) (DMG) (ZIP)
Shows how to build a parameterized motion graphics composition with Quartz Composer.
Cocoa, Quartz, Tools Sample Code 2005-06-01
Quartz Composer WWDC 2005 TextEdit (HTML) (DMG) (ZIP)
Demonstrate how to modify TextEdit's about dialog to display a Quartz Composer composition.
Cocoa, Quartz Sample Code 2005-06-01
QuartzCache (HTML) (DMG) (ZIP)
Demonstrates several caching techniques using CGBitmapContext, CGImageRef re-use, CGLayerRefs, CGImageSource.
Performance, Quartz Sample Code 2005-06-01
QuartzLines (HTML) (DMG) (ZIP)
Drawing Lines using Quartz's CGPath & CGContextStrokeLineSegments functions.
Quartz Sample Code 2005-06-01
TexturePerformanceDemo (HTML) (DMG) (ZIP)
OpenGL texture optimization demo for WWDC Session 214
Cocoa, Games, OpenGL Sample Code 2005-06-01
VertexPerformanceDemo (HTML) (DMG) (ZIP)
Vertex optimization demo for WWDC Session 214
Cocoa, Games, OpenGL Sample Code 2005-06-01
Why does my Quartz Composer composition render with a corrupted background in the QCView? (HTML)
QA1434: Describes the circumstances in which the QCView background may render corrupted.
Quartz Technical Q&A 2005-06-01
Worm (HTML) (DMG) (ZIP)
NSView performance demonstration. Uses a periodic timer to get best performance with Coalesced Update feature.
Cocoa, Performance Sample Code 2005-06-01
Carbon Resolution Independence Release Notes (HTML)
Carbon Release Note 2005-04-29
Resolution Independent UI Release Notes (HTML)
Quartz Release Note 2005-04-29
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
Optimizing OpenGL Data Throughput on Mac OS X (HTML)
Learn how to optimize your OpenGL code to maximize vertex data throughput.
OpenGL, Performance Articles 2005-03-21
Tiger Developer Overview Series: Developing with Core Image (HTML)
Learn how Core Image can help you take your graphics development to the next level.
Carbon, Cocoa, Games, Quartz Articles 2005-03-09
Finding an NSView's current magnification. (HTML)
QA1346: How to discover the current magnification (zoom level) of any NSView.
Cocoa, Quartz Technical Q&A 2005-03-08