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

Sort by
Title
Sort by
Topic
Sort by
Resource Type
Sorted by
Date
Image Unit Tutorial (HTML) (PDF)
Describes how to write image processing kernels and package them for distribution.
Carbon, Cocoa, Games, Quartz Guides 2009-05-06
Driving OpenGL Rendering Loops (HTML)
QA1385: Using Core Video display links (CVDisplayLink) or Cocoa timers (NSTimer) to drive an OpenGL rendering loop
Cocoa, OpenGL, Performance Technical Q&As 2009-05-01
Exporting Movies for iPod, Apple TV and iPhone (HTML)
TN2188: Discusses the use of the iPod, Apple TV and iPhone QuickTime export components.
QuickTime Technical Notes 2009-04-30
QTCoreVideo202 (HTML) (DMG) (ZIP)
Demonstrates how to render a QuickTime Movie using OpenGL PBO and the Core Video pixel buffer pipeline.
OpenGL, QuickTime, Video Sample Code 2009-04-07
QTCoreVideo301 (HTML) (DMG) (ZIP)
Demonstrates adding of effects & filters to QuickTime Movies in realtime using GLSL shaders and the Core Video texture pipeline.
OpenGL, QuickTime, Video Sample Code 2009-04-07
CAMediaTiming Protocol Reference (HTML) (PDF)
Describes the interface for the time behavior of an animation.
Cocoa, Quartz Reference 2009-03-04
CGPDFOperatorTable Reference (HTML) (PDF)
Describes a collection of PDF operators and associated callback functions.
Quartz Reference 2009-03-04
Color Programming Topics for Cocoa (HTML) (PDF)
Explains how applications specify colors and how users choose colors in Cocoa.
Cocoa Guides 2009-03-04
IKSlideshowDataSource Protocol Reference (HTML) (PDF)
Describes the methods that a slideshow object uses to access the contents of its data source object.
Cocoa, Quartz Reference 2009-03-04
NSWindow Class Reference (HTML) (PDF)
Describes a window.
Cocoa Reference 2009-03-04
CALayer Class Reference (HTML) (PDF)
Describes a node of animated visual content.
Cocoa, Quartz Reference 2009-02-04
NSShadow Class Reference (HTML) (PDF)
Describes a drop shadow for a drawing operation.
Cocoa Reference 2009-02-04
NSView Class Reference (HTML) (PDF)
Describes the interface for drawing, event handling, and printing in views.
Cocoa Reference 2009-02-04
Quartz Window Services Reference (HTML)
Describes the interface for capturing the contents of a window.
Carbon Reference 2009-01-15
CGDataProvider Reference (HTML) (PDF)
Describes an opaque data type for reading image data.
Quartz Reference 2009-01-06
CGGeometry Reference (HTML) (PDF)
Describes structures and functions for manipulating points, rectangles, and sizes.
Quartz Reference 2009-01-06
Cocoa Drawing Guide (HTML) (PDF)
Explains how to use Cocoa to draw your application's user interface.
Cocoa Guides 2009-01-06
NSBitmapImageRep Class Reference (HTML) (PDF)
Describes an object that draws an image from bitmap data.
Cocoa Reference 2009-01-06
NSColor Class Reference (HTML) (PDF)
Describes a representation of color and opacity.
Cocoa Reference 2009-01-06
NSImage Class Reference (HTML) (PDF)
Describes a graphical image that includes facilities for drawing and compositing.
Cocoa Reference 2009-01-06
NSImageRep Class Reference (HTML) (PDF)
Describes the interface for managing and drawing image data.
Cocoa Reference 2009-01-06
NSPanel Class Reference (HTML) (PDF)
Describes a window for performing auxiliary functions in an application.
Cocoa Reference 2009-01-06
NSScreen Class Reference (HTML) (PDF)
Describes a representation of a screen (computer monitor).
Cocoa Reference 2009-01-06
Quartz Composer WebKit Plug-in JavaScript Reference (HTML) (PDF)
Describes the API for manipulating Quartz Composer compositions in webpages and Dashboard widgets via the Quartz Composer WebKit Plug-in.
Quartz Guides 2009-01-06
Core Animation properties and Reference Counting (HTML)
QA1565: Describes a discrepancy between the property declarations in Core Animation and the actual behavior.
Cocoa, Games, Quartz Technical Q&As 2008-11-24
Application Kit Framework Reference (HTML) (PDF)
Describes the interface for all things related to an application's user interface.
Cocoa Reference 2008-11-19
Quartz Display Services Reference (HTML) (PDF)
Describes the interface for configuring and controlling display hardware.
Carbon, Hardware & Drivers, Quartz Reference 2008-11-19
Core Animation Programming Guide (HTML) (PDF)
Introduces the main components and services of Core Animation.
Cocoa, Quartz Guides 2008-11-13
OpenGL Performance Optimization : The Basics (HTML)
TN2093: This document describes some of the concepts and techniques for optimizing performance in OpenGL applications.
OpenGL Technical Notes 2008-11-05
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
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
CGPDFDictionary Reference (HTML) (PDF)
Describes a dictionary structure in a PDF document.
Quartz Reference 2008-10-15
CGPDFObject Reference (HTML) (PDF)
Describes a PDF object in a PDF document.
Quartz Reference 2008-10-15
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
Handling Unicode Text Editing With MLTE (HTML) (PDF)
Explains how to use Apple's multilingual text engine.
Typography Guides 2008-10-15
NSBox Class Reference (HTML) (PDF)
Describes a view that can display its border and a title.
Cocoa Reference 2008-10-15
NSOpenGLPixelFormat Class Reference (HTML) (PDF)
Describes a pixel format for OpenGL rendering.
Cocoa, OpenGL Reference 2008-10-15
Quartz Composer Programming Guide (HTML) (PDF)
Describes how to used the framework to load, play, and control compositions.
Carbon, Cocoa, Quartz Guides 2008-10-15
vImage Programming Guide (HTML) (PDF)
Explains how to use the C programming interface for high-speed vector image processing.
Performance Guides 2008-10-15
Using GLUT and OpenGL on Mac OS X (HTML)
QA1613: States the required steps to add GLUT and OpenGL to an Xcode project.
OpenGL Technical Q&As 2008-10-13
CALayerEssentials (HTML) (DMG) (ZIP)
Demonstrates the basics of setting up various Core Animation layers
Cocoa, Games, OpenGL, Quartz Sample Code 2008-09-30
Retain Counts of io_object_t Objects in IOKit.framework (HTML) (日本語 HTML)
QA1195: Distinguishes between the retain counts of an I/O Kit kernel object and its io_object_t user space proxy.
Printing Technical Q&As 2008-09-24
Disabling Processor Cores on a Multi-Core System (HTML) (日本語 HTML)
QA1141: Describes how to disable processor cores on a multi-core system for testing purposes.
Performance Technical Q&As 2008-09-16
Real world profiling with the OpenGL Profiler (HTML)
TN2178: This document describes how to use OpenGL Profiler, a very powerful tool for your OpenGL development.
Games, OpenGL, Performance Technical Notes 2008-09-16
CGColorSpace Reference (HTML) (PDF)
Describes an opaque type for specifying color space information.
Quartz Reference 2008-09-09
Multithreaded usage of the QCRenderer (HTML)
QA1538: Describes an issue that may arise when using the QCRenderer in a multi-threaded application.
Quartz Technical Q&As 2008-09-08
Squiggles (HTML) (DMG) (ZIP)
Demonstrates many Cocoa fundamentals in a Document-based Application featuring custom drawing and event-handling.
Cocoa Sample Code 2008-08-29
Getting the pixel data from a CGImage object (HTML)
QA1509: Describes how to access the pixel data of a CGImage object
Carbon, Cocoa, Games, Quartz Technical Q&As 2008-08-27
OpenGLScreenSnapshot (HTML) (DMG) (ZIP)
Demonstrates how to get the screen pixels using OpenGL and save them to an image file.
OpenGL Sample Code 2008-08-14
Gathering all PostScript Printer Descriptions (PPDs) (HTML)
QA1529: Describes a work around for an issue in PMCopyAvailablePPDs on Mac OS X 10.4 and below
Printing Technical Q&As 2008-08-08
Requirements for Quartz GL (HTML)
QA1536: Describes the requirements for enabling Quartz GL.
Carbon, Cocoa, Games, Hardware, Performance, Quartz Technical Q&As 2008-08-08
Using QTPixelBufferContextCreate with NewMovieFromProperties (HTML)
QA1443: Discusses using a QuickTime pixel buffer visual context and NewMovieFromProperties to output frames to pixel buffers.
QuickTime Technical Q&As 2008-08-08
Final Cut Pro - The 'r4fl' Pixel Format (HTML)
TN2201: Describes the 'r4fl' pixel format used by Final Cut Pro to support greater than 8-bit rendering.
QuickTime Technical Notes 2008-08-06
CoreImageGLTextureFBO (HTML) (DMG) (ZIP)
Making OpenGL textures with Core Image
Games, OpenGL, Quartz Sample Code 2008-07-30
GLSL Basics Cocoa (HTML) (DMG) (ZIP)
GLSL fundamentals using NSOpenGLView
OpenGL Sample Code 2008-07-30
Image Kit with Core Data (HTML) (DMG) (ZIP)
Using Image Kit's browser view with Core Data content.
Cocoa, Quartz Sample Code 2008-07-25
CAMediaTimingFunction Class Reference (HTML) (PDF)
Describes the pacing of an animation as a timing curve.
Cocoa, Quartz Reference 2008-07-11
Core Image Filter Reference (HTML) (PDF)
Describes the built-in image processing filters available through Core Image.
Quartz Reference 2008-07-11
Core Animation Reference Collection (HTML) (PDF)
Describes the API for Core Animation.
Cocoa, Quartz Reference 2008-06-26
OpenGL Shader Builder User Guide (HTML) (PDF)
Explains how to use OpenGL Shader Builder to develop and test GPU programs.
OpenGL, Tools Guides 2008-06-23
Core Image Kernel Language Reference (HTML) (PDF)
Describes the symbols for writing image-processing kernels.
Carbon, Cocoa, Games, Quartz Reference 2008-06-09
Core Image Programming Guide (HTML) (PDF)
Provides an overview and explains how to use and create image filters and image units.
Carbon, Cocoa, Games, Quartz Guides 2008-06-09
Image Kit Programming Guide (HTML) (PDF)
Explains how to support browsing, viewing, editing, and processing images.
Cocoa, Quartz Guides 2008-06-09
NSOpenGLContext Class Reference (HTML) (PDF)
Describes a target for OpenGL commands.
Cocoa, OpenGL Reference 2008-06-09
OpenGL Programming Guide for Mac OS X (HTML) (PDF)
Explains how to use the Apple implementation of OpenGL to create 3D graphics for Cocoa and Carbon applications.
Games, OpenGL Guides 2008-06-09
QTCoreVideo102 (HTML) (DMG) (ZIP)
An application demonstrating the use of QTKit, CoreVdeo, and OpenGL.
OpenGL, QuickTime, Video Sample Code 2008-06-06
QTCoreVideo103 (HTML) (DMG) (ZIP)
Demonstrates how to render a QuickTime Movie using OpenGL texture range and the Core Video pixel buffer pipeline.
OpenGL, QuickTime, Video Sample Code 2008-06-06
QTCoreVideo201 (HTML) (DMG) (ZIP)
Demonstrates how to render a QuickTime Movie using OpenGL FBO and the Core Video texture pipeline.
OpenGL, QuickTime, Video Sample Code 2008-06-06
MyMovieFilter (HTML) (DMG) (ZIP)
How to play a movie into a layer-backed QTMovieView and apply a Core Image filter while the movie plays.
QuickTime Sample Code 2008-06-02
WhackedTV (HTML) (DMG) (ZIP)
A Cocoa version of the venerable HackTV sample code, demonstrating usage of the Sequence Grabber API's
QuickTime Sample Code 2008-05-09
SampleScannerApp (HTML) (DMG) (ZIP)
This project implements a simple client accessing an ICA scanning device.
Carbon Sample Code 2008-05-07
CARenderer Class Reference (HTML) (PDF)
Describes an object that draws a layer to a Core Graphics context.
Cocoa, Quartz Reference 2008-04-30
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
LiveVideoMixer (HTML) (DMG) (ZIP)
LiveVideoMixer demonstrates customized video rendering with QuickTime 7 and CoreVideo and OpenGL.
OpenGL, QuickTime, Video Sample Code 2008-04-24
QTCoreVideo101 (HTML) (DMG) (ZIP)
Demonstrates (with very little code) how to render a QuickTime Movie using CoreVideo and OpenGL.
OpenGL, QuickTime, Video Sample Code 2008-04-24
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
CGAffineTransform Reference (HTML) (PDF)
Describes the functions for creating and applying affine transformations.
Quartz Reference 2008-04-08
CGContext Reference (HTML) (PDF)
Describes a Quartz 2D drawing destination.
Quartz Reference 2008-04-08
CGImage Reference (HTML) (PDF)
Describes a representation of an image.
Quartz Reference 2008-04-08
CGPDFPage Reference (HTML) (PDF)
Describes a page in a PDF document.
Quartz Reference 2008-04-08
IKImageView Class Reference (HTML) (PDF)
Describes the class used to display images efficiently at the same time it supports image editing.
Cocoa, Quartz Reference 2008-04-08
Image Capture Applications Reference (HTML)
Describes the API that applications use to communicate with image capture devices such as cameras and scanners.
General, Hardware Reference 2008-04-08
Image Capture Device Modules Reference (HTML)
Describes the API to add support for image capture devices, such as cameras, phones, and scanners, to Mac OS X.
Hardware & Drivers Reference 2008-04-08
QCCompositionRenderer Protocol Reference (HTML) (PDF)
Describes the methods for passing and retrieving data from the ports of a composition.
Cocoa, Quartz Reference 2008-04-08
QCPlugIn Class Reference (HTML) (PDF)
Describes the class used to write custom patches for Quartz Composer.
Cocoa, Quartz Reference 2008-04-08
Quartz Core Framework Reference (HTML) (PDF)
Describes the interfaces for Core Image and Core Video.
Quartz Reference 2008-03-12
CAAnimationGroup Class Reference (HTML) (PDF)
Describes a grouping of multiple animations into a single animation.
Cocoa, Quartz Reference 2008-03-11
CAOpenGLLayer Class Reference (HTML) (PDF)
Describes a layer that acts as a target for OpenGL commands.
Cocoa, Quartz Reference 2008-03-11
Core Animation Cookbook (HTML) (PDF)
Demonstrates common Core Animation tasks.
Cocoa, Quartz Guides 2008-03-11
Managing QTCompressionOptions - An overview of the QTCompressionOptionsWindow sample (HTML)
TN2219: Introductory overview of the QTCompressionOptionsWindow sample demonstrating one way to manage QTCompressionOptions objects.
QuickTime Technical Notes 2008-03-11
QTKit Capture - Specifying Media Compression Settings (HTML)
QA1586: Describes how to configure a file output object to save compressed captured media.
Cocoa Technical Q&As 2008-03-11
Font Handling (HTML) (PDF)
Explains the Cocoa font management system and how users select fonts.
Typography Guides 2008-02-08
GLUT (HTML) (DMG) (ZIP)
The OpenGL Utility Toolkit (GLUT) for Mac OS X version 3.4.0 (supporting the GLUT 3.7 API)
OpenGL Sample Code 2008-02-08
OpenGL Driver Monitor User Guide (HTML) (PDF)
Explains how to view the properties supported by the OpenGL drivers available on the system.
OpenGL, Tools Guides 2008-02-08
OpenGL Profiler User Guide (HTML) (PDF)
Explains how to assess the efficiency of an OpenGL application.
OpenGL, Tools Guides 2008-02-08
OpenGL Filter Basics Cocoa (HTML) (DMG) (ZIP)
How to use Objective-C and MVC design patterns in installing and utilizing filters in an OpenGL rendering pipeline
Cocoa, Games, OpenGL, Performance Sample Code 2008-02-06