Jump To:
Leopard Reference Library: Cocoa
Cocoa provides classes for custom drawing based on Quartz graphics, and utility functions for common graphics tasks such as copying and drawing bitmap data. To go beyond what Cocoa provides, developers can use the graphics and imaging frameworks in Mac OS X. Cocoa applications 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
Sort by
Resource Type
Sorted by
Date
Image Unit Tutorial (HTML) (PDF)
Describes how to write image processing kernels and package them for distribution.
Guides 2009-05-06
NSAnimatablePropertyContainer Protocol Reference (HTML) (PDF)
Describes the interface for an animatable proxy for views and windows.
Reference 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
Technical Q&As 2009-05-01
QTCoreVideo202 (HTML) (DMG) (ZIP)
Demonstrates how to render a QuickTime Movie using OpenGL PBO and the Core Video pixel buffer pipeline.
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.
Sample Code 2009-04-07
CAMediaTiming Protocol Reference (HTML) (PDF)
Describes the interface for the time behavior of an animation.
Reference 2009-03-04
Color Programming Topics for Cocoa (HTML) (PDF)
Explains how applications specify colors and how users choose colors in 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.
Reference 2009-03-04
NSWindow Class Reference (HTML) (PDF)
Describes a window.
Reference 2009-03-04
CALayer Class Reference (HTML) (PDF)
Describes a node of animated visual content.
Reference 2009-02-04
NSShadow Class Reference (HTML) (PDF)
Describes a drop shadow for a drawing operation.
Reference 2009-02-04
NSView Class Reference (HTML) (PDF)
Describes the interface for drawing, event handling, and printing in views.
Reference 2009-02-04
Cocoa Drawing Guide (HTML) (PDF)
Explains how to use Cocoa to draw your application's user interface.
Guides 2009-01-06
NSBitmapImageRep Class Reference (HTML) (PDF)
Describes an object that draws an image from bitmap data.
Reference 2009-01-06
NSColor Class Reference (HTML) (PDF)
Describes a representation of color and opacity.
Reference 2009-01-06
NSGradient Class Reference (HTML) (PDF)
Describes a color gradient to use when drawing.
Reference 2009-01-06
NSImage Class Reference (HTML) (PDF)
Describes a graphical image that includes facilities for drawing and compositing.
Reference 2009-01-06
NSImageRep Class Reference (HTML) (PDF)
Describes the interface for managing and drawing image data.
Reference 2009-01-06
NSPanel Class Reference (HTML) (PDF)
Describes a window for performing auxiliary functions in an application.
Reference 2009-01-06
NSScreen Class Reference (HTML) (PDF)
Describes a representation of a screen (computer monitor).
Reference 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.
Technical Q&As 2008-11-24
Core Animation Programming Guide (HTML) (PDF)
Introduces the main components and services of Core Animation.
Guides 2008-11-13
Animating the frame of a CALayer. (HTML)
QA1620: Explains how the frame property of a layer interacts with animations.
Technical Q&As 2008-10-24
Animation Overview (HTML) (PDF)
Describes the animation facilities provided by Mac OS X.
Guides 2008-10-15
NSBox Class Reference (HTML) (PDF)
Describes a view that can display its border and a title.
Reference 2008-10-15
NSOpenGLPixelFormat Class Reference (HTML) (PDF)
Describes a pixel format for OpenGL rendering.
Reference 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
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
Guides 2008-10-15
CALayerEssentials (HTML) (DMG) (ZIP)
Demonstrates the basics of setting up various Core Animation layers
Sample Code 2008-09-30
Squiggles (HTML) (DMG) (ZIP)
Demonstrates many Cocoa fundamentals in a Document-based Application featuring custom drawing and event-handling.
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
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
Image Kit with Core Data (HTML) (DMG) (ZIP)
Using Image Kit's browser view with Core Data content.
Sample Code 2008-07-25
CAMediaTimingFunction Class Reference (HTML) (PDF)
Describes the pacing of an animation as a timing curve.
Reference 2008-07-11
Core Animation Reference Collection (HTML) (PDF)
Describes the API for Core Animation.
Reference 2008-06-26
Core Image Kernel Language Reference (HTML) (PDF)
Describes the symbols for writing image-processing kernels.
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.
Guides 2008-06-09
Image Kit Programming Guide (HTML) (PDF)
Explains how to support browsing, viewing, editing, and processing images.
Guides 2008-06-09
NSOpenGLContext Class Reference (HTML) (PDF)
Describes a target for OpenGL commands.
Reference 2008-06-09
QTCoreVideo102 (HTML) (DMG) (ZIP)
An application demonstrating the use of QTKit, CoreVdeo, and OpenGL.
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.
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.
Sample Code 2008-06-06
CARenderer Class Reference (HTML) (PDF)
Describes an object that draws a layer to a Core Graphics context.
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
Sample Code 2008-04-24
View Programming Guide for Cocoa (HTML) (PDF)
Explains how to design and implement Cocoa views in applications.
Guides 2008-04-10
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
Animation Types and Timing Programming Guide (HTML) (PDF)
Describes the animation and timing classes used by both Core Animation and Cocoa Animation proxies.
Guides 2008-04-08
IKImageView Class Reference (HTML) (PDF)
Describes the class used to display images efficiently at the same time it supports image editing.
Reference 2008-04-08
QCCompositionRenderer Protocol Reference (HTML) (PDF)
Describes the methods for passing and retrieving data from the ports of a composition.
Reference 2008-04-08
QCPlugIn Class Reference (HTML) (PDF)
Describes the class used to write custom patches for Quartz Composer.
Reference 2008-04-08
Quartz Core Framework Reference (HTML) (PDF)
Describes the interfaces for Core Image and Core Video.
Reference 2008-03-12
CAAnimationGroup Class Reference (HTML) (PDF)
Describes a grouping of multiple animations into a single animation.
Reference 2008-03-11
CAOpenGLLayer Class Reference (HTML) (PDF)
Describes a layer that acts as a target for OpenGL commands.
Reference 2008-03-11
Core Animation Cookbook (HTML) (PDF)
Demonstrates common Core Animation tasks.
Guides 2008-03-11
NSAnimationContext Class Reference (HTML) (PDF)
Describes nested transaction support for animating views.
Reference 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
Sample Code 2008-02-06
GeekGameBoard (HTML) (DMG) (ZIP)
Shows how to use Core Animation for the user interface of a board or card game.
Sample Code 2007-12-19
How do I get the hexadecimal value of an NSColor object? (HTML)
QA1576: Describes how to convert an NSColor object to its Hexadecimal value.
Technical Q&As 2007-12-19
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.
Articles 2007-12-11
CAConstraintLayoutManager Class Reference (HTML) (PDF)
Describes a layout manager that applies a set of constraints to a layer tree.
Reference 2007-12-11
CATextLayer Class Reference (HTML) (PDF)
Describes a layer that draws text.
Reference 2007-12-11
CIFilter Class Reference (HTML) (PDF)
Describes the class that processes image data and produces a Core Image image as output.
Reference 2007-12-11
Leopard Technology Series for Developers: Graphics & Media Overview (HTML)
Describes Leopard's graphics and media capabilities.
Articles 2007-12-11
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
PDF Kit Reference Collection (HTML) (PDF)
Describes the Objective-C API for viewing, navigating, and editing PDF content.
Reference 2007-12-11
PDFAction Class Reference (HTML) (PDF)
Describes the class for representing an action in a PDF document.
Reference 2007-12-11
PDFActionGoTo Class Reference (HTML) (PDF)
Describes the class for manipulating the destination of a go-to action in a PDF document.
Reference 2007-12-11
PDFActionNamed Class Reference (HTML) (PDF)
Describes the class for working with actions that have defined names, such as "Go back."
Reference 2007-12-11
PDFActionRemoteGoTo Class Reference (HTML) (PDF)
Describes the class for manipulating the destination of a go-to action that targets another PDF document.
Reference 2007-12-11
PDFActionResetForm Class Reference (HTML) (PDF)
Describes the class for getting and clearing fields in a PDF form.
Reference 2007-12-11
PDFActionURL Class Reference (HTML) (PDF)
Describes the class for managing the URL associated with a URL action.
Reference 2007-12-11
PDFAnnotation Class Reference (HTML) (PDF)
Describe the class for creating and managing annotations in PDF documents.
Reference 2007-12-11
PDFAnnotationButtonWidget Class Reference (HTML) (PDF)
Describes the class for manipulating button annotations in PDF documents.
Reference 2007-12-11
PDFAnnotationChoiceWidget Class Reference (HTML) (PDF)
Describes the class for manipulating pop-up menu and list annotations in a PDF document.
Reference 2007-12-11
PDFAnnotationFreeText Class Reference (HTML) (PDF)
Describes the class for manipulating free text annotations in PDF documents.
Reference 2007-12-11
PDFAnnotationLine Class Reference (HTML) (PDF)
Describes the class for manipulating line annotations in PDF documents.
Reference 2007-12-11
PDFAnnotationPopup Class Reference (HTML) (PDF)
Describes the class for manipulating pop-up menu annotations in a PDF document.
Reference 2007-12-11
PDFAnnotationStamp Class Reference (HTML) (PDF)
Describes the class for displaying content to look as if it is "stamped" onto a PDF page.
Reference 2007-12-11
PDFAnnotationText Class Reference (HTML) (PDF)
Describes the class for manipulating text annotations in PDF documents.
Reference 2007-12-11
PDFAnnotationTextWidget Class Reference (HTML) (PDF)
Describes the class for manipulating editable text fields in PDF documents.
Reference 2007-12-11
PDFDestination Class Reference (HTML) (PDF)
Describes the class for describing specific destinations in PDF documents.
Reference 2007-12-11
PDFDocument Class Reference (HTML) (PDF)
Describes the class for creating and manipulating PDF files.
Reference 2007-12-11
PDFOutline Class Reference (HTML) (PDF)
Describes the class for creating and manipulating structure outlines in PDF documents.
Reference 2007-12-11
PDFPage Class Reference (HTML) (PDF)
Describes the class for handling specific pages in PDF documents.
Reference 2007-12-11
PDFThumbnailView Class Reference (HTML) (PDF)
Describes the class for managing the thumbnail view in a PDF document.
Reference 2007-12-11
Quartz Composer Custom Patch Programming Guide (HTML) (PDF)
Describes how to create custom patches for distribution.
Guides 2007-12-11
BoingX (HTML) (DMG) (ZIP)
Shows off using Quartz Extreme to provide borderless OpenGL content on the desktop.
Sample Code 2007-11-06
CocoaSlides (HTML) (DMG) (ZIP)
An image browser written using AppKit's Core Animation-based compositing and animation functionality
Sample Code 2007-11-02
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
CAAnimation Class Reference (HTML) (PDF)
Describes the interface for managing the actions and timing of an animation.
Reference 2007-10-31
CATransition Class Reference (HTML) (PDF)
Describes the class that provides transition animations to layers.
Reference 2007-10-31
CIImage Class Reference (HTML) (PDF)
Describes the class that represents an immutable Core Image image.
Reference 2007-10-31
IKFilterBrowserPanel Class Reference (HTML) (PDF)
Describes the class that provides the panel contained in a filter browser.
Reference 2007-10-31
IKPictureTaker Class Reference (HTML) (PDF)
Descibes the class that provides a panel for choosing images.
Reference 2007-10-31
IKSlideshow Class Reference (HTML) (PDF)
Describes the class that encapsulates a data source and options for a slideshow.
Reference 2007-10-31
NSAnimation Class Reference (HTML) (PDF)
Describes the behavior of an animation.
Reference 2007-10-31
Cocoa OpenGL (HTML) (DMG) (ZIP)
Demonstrates using Cocoa with OpenGL, including window setup and event handling.
Sample Code 2007-10-22
MassiveImage (HTML) (DMG) (ZIP)
Shows how to use a CGDataProvider to save a very large image with Image IO
Sample Code 2007-09-27
Core Animation QuickTime Layer (HTML) (DMG) (ZIP)
Shows the use of controls in a Layer over a Core Animation QTMovieLayer
Sample Code 2007-09-26
Quartz 2D Shadings (HTML) (DMG) (ZIP)
Shows how to use CGShading and CGGradient objects to draw simple gradients.
Sample Code 2007-08-31
How to measure CG text (HTML)
QA1051: Explains how to measure Core Graphics text.
Technical Q&As 2007-08-02
CAAction Protocol Reference (HTML) (PDF)
Describes the interface for receiving actions initiated by a layer.
Reference 2007-07-24
CABasicAnimation Class Reference (HTML) (PDF)
Describes the basic interpolation of a layer property.
Reference 2007-07-24
CAConstraint Class Reference (HTML) (PDF)
Describes a single geometric constraint between two layers.
Reference 2007-07-24
CAKeyframeAnimation Class Reference (HTML) (PDF)
Describes an animation that provides keyframe interpolation of a layer property.
Reference 2007-07-24
CALayoutManager Protocol Reference (HTML) (PDF)
Describes the interface for receiving requests to arrange a layout tree.
Reference 2007-07-24
CAPropertyAnimation Class Reference (HTML) (PDF)
Describes the interface for manipulating values of layer properties.
Reference 2007-07-24
CAScrollLayer Class Reference (HTML) (PDF)
Describes a layer that displays a scrollable portion of another layer.
Reference 2007-07-24
CATiledLayer Class Reference (HTML) (PDF)
Describes a layer that draws tiles of content as needed.
Reference 2007-07-24
CATransaction Class Reference (HTML) (PDF)
Describes a batch of Core Animation updates that are applied to a render tree atomically.
Reference 2007-07-24
CIFilter Core Animation Additions (HTML) (PDF)
Describes the category that extends Core Image filters for use with Layer Kit.
Reference 2007-07-24
Core Animation Function Reference (HTML) (PDF)
Describes the C functions that support Core Animation.
Reference 2007-07-24
NSValue Core Animation Additions (HTML) (PDF)
Describes extensions to Foundation's NSValue class that support the Core Animation LKTransform structure.
Reference 2007-07-24
CGBitmapContextCreate Supported Color Spaces (HTML)
QA1037: Lists the color space and alpha info combinations currently supported by CGBitmapContextCreate.
Technical Q&As 2007-07-18
IKImageBrowserDataSource Protocol Reference (HTML) (PDF)
Describes the informal protocol used to access the data source associated with an image browser view.
Reference 2007-07-17
Quartz Composer User Guide (HTML) (PDF)
Explains how to use the Quartz Composer development tool to create motion graphics compositions.
Guides 2007-07-17
QCPlugInInputImageSource Protocol Reference (HTML) (PDF)
Describes the methods for managing image data that's input to a QCPlugIn object.
Reference 2007-07-12
vImage Reference Collection (HTML) (PDF)
Describes the C programming interface for high-performance image processing.
Reference 2007-07-12
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
QCComposition Class Reference (HTML) (PDF)
Describes the class that represents a Quartz Composer composition.
Reference 2007-06-26
Quartz 2D Transformer (HTML) (DMG) (ZIP)
Shows how to use Quartz 2D to manipulate an image
Sample Code 2007-06-21
LayerBackedOpenGLView (HTML) (DMG) (ZIP)
"LayerBackedOpenGLView" provides a simple example of hosting Cocoa controls as subviews of an NSOpenGLView.
Sample Code 2007-06-12
BasicCocoaAnimations (HTML) (DMG) (ZIP)
"BasicCocoaAnimations" demonstrates the use of the animator proxy to easily animate Cocoa views and windows.
Sample Code 2007-06-11
QuartzComposerSamplePatches (HTML) (DMG) (ZIP)
A short list of new patches in Quartz Composer Mac OS X 10.5
Sample Code 2007-06-11
CIImage Additions Reference (HTML) (PDF)
Describes additions for manipulating Cocoa images.
Reference 2007-06-08
Core Animation Release Notes (HTML)
Describes features, issues, and workarounds related to Mac OS X v10.5 and its support of Core Animation.
Release Notes 2007-05-31
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
VideoHardwareInfo (HTML) (DMG) (ZIP)
Query VRAM, Quartz Extreme support, OpenGL extensions and renderer, GLSL version and support.
Sample Code 2007-05-14
Using UTIs to Identify Image Files (HTML)
QA1518: Explains how to use Uniform Type Identifiers to identify what files can be opened at images.
Technical Q&As 2007-05-11
QCCompositionParameterView Class Reference (HTML) (PDF)
Describes the class used to edit the input parameters of a composition in a view.
Reference 2007-05-09
QCCompositionParameterViewDelegate Protocol Reference (HTML) (PDF)
Describes the protocol for responding to changes in a QCCompositionParameterView object.
Reference 2007-05-09
QCCompositionPickerPanel Class Reference (HTML) (PDF)
Describes the class used to display a utility window for browsing and selecting a composition.
Reference 2007-05-09
QCCompositionPickerView Class Reference (HTML) (PDF)
Describes the class used to display a view for browsing and selecting a composition.
Reference 2007-05-09
QCCompositionPickerViewDelegate Protocol Reference (HTML) (PDF)
Describes the protocol for responding to changes in a QCCompositionPickerView object.
Reference 2007-05-09
QCCompositionRepository Class Reference (HTML) (PDF)
Describes the class that represents a system-wide, central repository of Quartz Composer compositions.
Reference 2007-05-09
QCPlugInContext Protocol Reference (HTML) (PDF)
Describes the protocol used by execution contexts.
Reference 2007-05-09
QCPlugInOutputImageProvider Protocol Reference (HTML) (PDF)
Describes the methods for managing image data that's produced as output from a QCPlugIn object.
Reference 2007-05-09
QCPlugInViewController Class Reference (HTML) (PDF)
Describes the class that provides a controller object for a user interface to edit the settings for a QCPlugIn object.
Reference 2007-05-09
QCRenderer Class Reference (HTML) (PDF)
Describes the class used to load, play, and control a Quartz Composer composition to an arbitrary OpenGL context.
Reference 2007-05-09
QCView Class Reference (HTML) (PDF)
Describes the class used to load, play, and control a Quartz Composer composition to a custom NSView object.
Reference 2007-05-09
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Guides 2007-05-04
NSViewController Class Reference (HTML) (PDF)
Describes the manager of a view, usually a view stored in a nib file.
Reference 2007-05-02
NSColorPickingDefault Protocol Reference (HTML) (PDF)
Describes the interface for receiving basic color-picker user-interface requests.
Reference 2007-04-27
NSAlert Class Reference (HTML) (PDF)
Describes a window that displays a message and obtains the user's response to it.
Reference 2007-04-25
PictureTaker (HTML) (DMG) (ZIP)
Demonstrates the PictureTaker in a basic Cocoa application
Sample Code 2007-04-02
NSColorPickingCustom Protocol Reference (HTML) (PDF)
Describes the interface for receiving custom color-picker user-interface requests.
Reference 2007-04-01
CIContext Class Reference (HTML) (PDF)
Describes the class that provides an evaluation context for rendering a Core Image image through Quartz 2D or OpenGL.
Reference 2007-03-16
ImageBrowser (HTML) (DMG) (ZIP)
Demonstrates the ImageKit's IKImageBrowserView to browse images in a basic Cocoa application.
Sample Code 2007-03-13
NSBezierPath Class Reference (HTML) (PDF)
Describes a vector-based path consisting of line and curve segments.
Reference 2007-03-02
NSGraphicsContext Class Reference (HTML) (PDF)
Describes a destination for drawing operations.
Reference 2007-03-01
Grady (HTML) (DMG) (ZIP)
Demonstrates how to use the NSGradient class.
Sample Code 2007-02-28
NSAffineTransform Additions Reference (HTML) (PDF)
Describes additions to support affine transformations.
Reference 2007-02-28
NSColorList Class Reference (HTML) (PDF)
Describes an ordered list of colors identified by keys.
Reference 2007-02-28
NSColorPanel Class Reference (HTML) (PDF)
Describes the standard panel used for color selection.
Reference 2007-02-28
NSColorPicker Class Reference (HTML) (PDF)
Describes the interface for custom views in a color panel used for color selection.
Reference 2007-02-28
NSColorSpace Class Reference (HTML) (PDF)
Describes a representation of a system or custom color space.
Reference 2007-02-28
NSColorWell Class Reference (HTML) (PDF)
Describes a control for displaying and selecting colors.
Reference 2007-02-28
NSOpenGLPixelBuffer Class Reference (HTML) (PDF)
Describes an OpenGL pixel buffer.
Reference 2007-01-31
NSQuickDrawView Class Reference (HTML) (PDF)
Describes a deprecated technology replaced by Quartz.
Reference 2007-01-30
NSOpenGLView Class Reference (HTML) (PDF)
Describes a view for OpenGL drawing.
Reference 2007-01-26
NSPDFImageRep Class Reference (HTML) (PDF)
Describes an object that draws an image from PDF data.
Reference 2007-01-26
NSPICTImageRep Class Reference (HTML) (PDF)
Describes an object that draws an image from PICT data.
Reference 2007-01-26
Quartz Composer Reference Collection (HTML) (PDF)
Describes the Objective-C API that supports loading, playing, and controlling compositions.
Reference 2007-01-25
NSEPSImageRep Class Reference (HTML) (PDF)
Describes an object that draws an image from encapsulated PostScript data.
Reference 2007-01-22
Working Around Incorrect -needsToDrawRect: Behavior in Custom View Classes (HTML)
TN2107: Describes how to work around a bug in NSView's -needsToDrawRect: method.
Technical Notes 2007-01-22
NSCustomImageRep Class Reference (HTML) (PDF)
Describes an object that supports drawing an image using a custom data format.
Reference 2007-01-19
NSAffineTransform Class Reference (HTML) (PDF)
Describes an affine transformation from one coordinate space to another.
Reference 2007-01-15
NSCachedImageRep Class Reference (HTML) (PDF)
Describes cached image data that is ready to be rendered.
Reference 2007-01-15
NSCIImageRep Class Reference (HTML) (PDF)
Describes an object that draws an image from a Core Image CIImage instance.
Reference 2007-01-15
IKImageBrowserItem Protocol Reference (HTML) (PDF)
Describes the informal protocol used by an image browser view to access the data source for an item.
Reference 2007-01-12
CIImageAccumulator Class Reference (HTML) (PDF)
Describes the class that enables feedback-based image processing.
Reference 2007-01-05
IKImageBrowserView Class Reference (HTML) (PDF)
Describes the class that can display and browse a large amount of images and movies in an efficient manner.
Reference 2006-12-13
CIFilterShape Class Reference (HTML) (PDF)
Describes the class that defines the bounding shape of a filter and the domain of definition of a filter operation.
Reference 2006-12-07
CIPlugInRegistration Protocol Reference (HTML) (PDF)
Describes the protocol used to load Core Image image units.
Reference 2006-12-07
CISampler Class Reference (HTML) (PDF)
Describes the class that retrieves samples of images that are then processed by a Core Image kernel.
Reference 2006-12-07
CIVector Class Reference (HTML) (PDF)
Describes the class used to pass parameter values to Core Image filters.
Reference 2006-12-07
IKFilterCustomUIProvider Protocol Reference (HTML) (PDF)
Descibes the protocol that defines a method for providing a view for a filter.
Reference 2006-12-07
IKImageBrowserDelegate Protocol Reference (HTML) (PDF)
Describes the informal protocol for the delegate of an image browser view.
Reference 2006-12-07
CIFilter Image Kit Additions (HTML) (PDF)
Describes the category that extends Core Image filters for use with Image Kit.
Reference 2006-12-06
IKFilterBrowserView Class Reference (HTML) (PDF)
Describes the class that supports browsing Core Image filters.
Reference 2006-12-06
IKFilterUIView Class Reference (HTML) (PDF)
Describes the class that provides a user interface for Core Image filters.
Reference 2006-12-06
IKImageEditPanel Class Reference (HTML) (PDF)
Describes the class that provides a panel optimized for image editing.
Reference 2006-12-06
IKImageEditPanelDataSource Protocol Reference (HTML) (PDF)
Describes the mthods than an image edit panel object uses to access the contents of its data source object.
Reference 2006-12-06
IKSaveOptions Class Reference (HTML) (PDF)
Describes the class that initializes, adds, and manages user interface options for saving image data.
Reference 2006-12-06
Image Kit Reference Collection (HTML) (PDF)
Describes the Objective-C API for providing a user interface for images, image editing, and image processing.
Reference 2006-12-06
CIColor Class Reference (HTML) (PDF)
Describes the class used to manage color values and color spaces for Core Image filters.
Reference 2006-12-05
CIFilterGenerator Class Reference (HTML) (PDF)
Describes the class that supports chaining together image processing filters.
Reference 2006-12-05
CIImageProvider Protocol Reference (HTML) (PDF)
Describes the informal protocol used to supply bitmap data for creating or initializing a Core Image image.
Reference 2006-12-05
CIKernel Class Reference (HTML) (PDF)
Describes the class that operates on individual pixels using a kernel routine.
Reference 2006-12-05
CIPlugIn Class Reference (HTML) (PDF)
Describes the class that is responsible for loading image units.
Reference 2006-12-05
Core Image Reference Collection (HTML) (PDF)
Describes the Objective-C API for using and creating filters for image processing.
Reference 2006-12-05
MyCustomColorPicker (HTML) (DMG) (ZIP)
Shows how to write a custom color picker using Cocoa.
Sample Code 2006-10-09
CarbonQuartzComposer_TV (HTML) (DMG) (ZIP)
Demonstrates how to integrate Cocoa based QuartzComposer window into a Carbon based application
Sample Code 2006-10-02
ImageBackground (HTML) (DMG) (ZIP)
Shows how to draw an image in the background of an NSOutlineView and NSTableView.
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
QCFundamentals (HTML) (DMG) (ZIP)
Demonstrates Coordinate, Interpolation, and Iterative systems in Quartz Composer with an amusing animation
Sample Code 2006-08-07
QCGalaxy (HTML) (DMG) (ZIP)
Demonstrates use of Particle Systems and Core Image Filters in Quartz Composer
Sample Code 2006-08-07
LiveVideoMixer3 (HTML) (DMG) (ZIP)
LiveVideoMixer3 is extended to support Video In via QTKit
Sample Code 2006-08-01
PDF Annotation Editor (HTML) (DMG) (ZIP)
Demonstrates how to use PDF Kit to examine, edit, and create PDF annotations.
Sample Code 2006-07-31
PDF Calendar (HTML) (DMG) (ZIP)
Demonstrates how to use PDF Kit to create PDF content.
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
Sample Code 2006-07-25
GLSLShowpiece (HTML) (DMG) (ZIP)
GLSLShowpiece demonstrates several Vertex and Fragment shaders
Sample Code 2006-07-17
Printing Programming Topics for Cocoa (HTML) (PDF)
Explains how to support printing in Cocoa applications.
Guides 2006-06-28
Scroll View Programming Guide for Cocoa (HTML) (PDF)
Describes how to use scroll views in Cocoa applications.
Guides 2006-06-28
Animation Programming Guide for Cocoa (HTML) (PDF)
Describes how to use Cocoa animation objects to enhance user interface transitions.
Guides 2006-05-23
CIColor Additions Reference (HTML) (PDF)
Describes additions to support Cocoa color information.
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.
Reference 2006-05-23
NSScrollView Class Reference (HTML) (PDF)
Describes a view for displaying content larger than its bounds.
Reference 2006-05-23
NSViewAnimation Class Reference (HTML) (PDF)
Describes an animation in a view or window.
Reference 2006-05-23
PDFAnnotationCircle Class Reference (HTML) (PDF)
Describes the class for manipulating circle annotations in PDF documents.
Reference 2006-05-23
PDFAnnotationInk Class Reference (HTML) (PDF)
Describes the class for manipulating ink annotations in PDF documents.
Reference 2006-05-23
PDFAnnotationLink Class Reference (HTML) (PDF)
Describes the class for manipulating link annotations in PDF documents.
Reference 2006-05-23
PDFAnnotationMarkup Class Reference (HTML) (PDF)
Describes the class for manipulating markup annotations (highlighting, underlining, and so on) in PDF documents.
Reference 2006-05-23
PDFAnnotationSquare Class Reference (HTML) (PDF)
Describes the class for manipulating square annotations in PDF documents.
Reference 2006-05-23
PDFBorder Class Reference (HTML) (PDF)
Describes the class for creating and manipulating borders around annotations in PDF documents.
Reference 2006-05-23
DragItemAround (HTML) (DMG) (ZIP)
Illustrates creating a custom subclass of NSView.
Sample Code 2006-03-16
Making the most of Cocoa bindings in Quartz Composer (HTML)
TN2146: Describes how to best use Cocoa bindings with Quartz Composer.
Technical Notes 2006-03-03
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.
Articles 2006-02-20
Working with Quartz Composer (HTML)
Learn to build a sample composition without having to write code.
Articles 2006-02-13
Debugging Graphics with QuartzDebug (HTML) (日本語 HTML)
QA1236: Explains how to use QuartzDebug to debug graphics issues.
Technical Q&As 2006-01-12
Getting images in and out from Quartz Composer compositions (HTML)
TN2143: Describes how to efficiently pass images into and out of Quartz Composer
Technical Notes 2005-10-04
PDFKitLinker2 (HTML) (DMG) (ZIP)
Demonstrates many aspects of PDFKit including navigation, display modes, searching, and PDFView subclassing.
Sample Code 2005-08-10
CIAnnotation (HTML) (DMG) (ZIP)
Image annotation application using Core Image Filters. Demonstrates creation and usage of Image Units.
Sample Code 2005-08-01
VideoViewer (HTML) (DMG) (ZIP)
Simple example of video rendering using QuickTime visual contexts, OpenGL, Core Video and Core Image.
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.
Sample Code 2005-07-19
Color Management Overview (HTML) (PDF)
Introduces basic concepts and defines color spaces.
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.
Sample Code 2005-07-06
Reducer (HTML) (DMG) (ZIP)
Simple utility for rescaling bitmapped images. Demonstrates use of Core Image, NSAnimation, view drawing redirection.
Sample Code 2005-06-06
UnsharpMask (HTML) (DMG) (ZIP)
Demonstrates how to build Automator actions using Cocoa frameworks.
Sample Code 2005-06-06
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.
Technical Q&As 2005-06-01
Link Snoop (HTML) (DMG) (ZIP)
Shows how to use PDFKit to scan for and highlight link annotations in PDFs.
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.
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.
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.
Sample Code 2005-06-01
Quartz Composer Texture (HTML) (DMG) (ZIP)
Shows how to use a Quartz Composer composition as an OpenGL texture.
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.
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.
Sample Code 2005-06-01
QuartzLines (HTML) (DMG) (ZIP)
Drawing Lines using Quartz's CGPath & CGContextStrokeLineSegments functions.
Sample Code 2005-06-01
TexturePerformanceDemo (HTML) (DMG) (ZIP)
OpenGL texture optimization demo for WWDC Session 214
Sample Code 2005-06-01
VertexPerformanceDemo (HTML) (DMG) (ZIP)
Vertex optimization demo for WWDC Session 214
Sample Code 2005-06-01
Worm (HTML) (DMG) (ZIP)
NSView performance demonstration. Uses a periodic timer to get best performance with Coalesced Update feature.
Sample Code 2005-06-01
Resolution Independent UI Release Notes (HTML)
Release Notes 2005-04-29
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
Finding an NSView's current magnification. (HTML)
QA1346: How to discover the current magnification (zoom level) of any NSView.
Technical Q&As 2005-03-08
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
NSOpenGLView redraw problems after a window is closed and re-opened. (HTML)
QA1353: Workaround for NSOpenGLView failure to draw after its window is closed and re-opened.
Technical Q&As 2004-12-03
NSGLImage (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to texture in OpenGL with an NSImage and/or NSBitmapImageRep
Sample Code 2004-12-01
Using Interface Builder's NSOpenGLView or Custom View objects for an OpenGL application (HTML)
QA1167: Describes usage cases for both NSOpenGLViews and Custom Views for Cocoa OpenGL applications
Technical Q&As 2004-10-28
How do I determine how much VRAM is available on my video card? (HTML)
QA1168: Using Core Graphics and IOKit to find the physical size of VRAM on installed hardware.
Technical Q&As 2004-10-11
Setting the ColorSync profile for a NSBitmapImageRep object (HTML)
QA1369: Setting the ColorSync profile for a NSBitmapImageRep object
Technical Q&As 2004-09-08
Video Hardware Info (HTML) (DMG) (ZIP)
Sample demonstrates how to query the video hardware for useful information.
Sample Code 2004-02-12
NSOpenGL Fullscreen (HTML) (DMG) (ZIP)
Demonstrates how to create and switch between windowed and fullscreen OpenGL contexts using NSOpenGL.
Sample Code 2004-02-11
Shearing a Coordinate Space with NSAffineTransform (HTML) (日本語 HTML)
QA1332: Describes a simple way to shear coordinate spaces by adding a few methods to the NSAffineTransform class.
Technical Q&As 2004-01-29
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
ColorMatching (HTML) (DMG) (ZIP)
Performs simple color matching of images using ColorSync or the QuickTime 6.4 Graphics Importers.
Sample Code 2003-12-18
OpenGL Screensaver (HTML) (DMG) (ZIP)
Demonstrates how to integrate OpenGL drawing into a standard Cocoa screen saver on Mac OS X.
Sample Code 2003-12-10
RGB ValueTransformers (HTML) (DMG) (ZIP)
Supersedes the "RGB Image sample". Sample now uses bindings. Color separation now done in an NSValueTransformer subclass.
Sample Code 2003-11-18
FancyAbout (HTML) (DMG) (ZIP)
Demonstrates several visual effects for "About..." panels such as scrolling text, window without a title bar, and ways to dismiss the window.
Sample Code 2003-10-27
CGImageRef contents are immutable (HTML) (日本語 HTML)
QA1276: Explains that CGImageRef contents are considered immutable once created.
Technical Q&As 2003-07-17
Cocoa CG aliasing demo (HTML) (DMG) (ZIP)
Shows how to draw both aliased and anti-aliased text and graphics using Quartz and Cocoa.
Sample Code 2003-07-17
Cocoa CG arc demo (HTML) (DMG) (ZIP)
Shows how to draw both aliased and anti-aliased arcs using Quartz and Cocoa.
Sample Code 2003-07-17
Monochrome Image (HTML) (DMG) (ZIP)
Applies the NTSC color weighting formula to an image to generate a monochrome version of the image.
Sample Code 2003-07-16
VBL (HTML) (DMG) (ZIP)
A simple example of how to create an OpenGLView in AppKit.
Sample Code 2003-07-07
FunkyOverlayWindow (HTML) (DMG) (ZIP)
Demonstrates several window layering, transparency and widget interaction techniques in Cocoa.
Sample Code 2003-05-08
CubePuzzle (HTML) (DMG) (ZIP)
Models a Rubik's Cube using Cocoa and OpenGL
Sample Code 2003-04-21
GLChildWindowDemo (HTML) (DMG) (ZIP)
Shows using Cocoa's child windows and Quartz Extreme to provide 2D/3D overlays above 3D content.
Sample Code 2003-04-21
OpenGLCompositorLab (HTML) (DMG) (ZIP)
Demonstrates using OpenGL to composite multiple sources in hardware. Requires NVIDIA GeForce 4 Ti hardware.
Sample Code 2003-04-21
Is ColorSync thread safe? (HTML) (日本語 HTML)
QA1261: Discusses ColorSync thread-safety issues.
Technical Q&As 2003-04-17
Quartz 2D Thread Safety (HTML) (日本語 HTML)
QA1238: Explains the thread-safety issues for the Quartz 2D API.
Technical Q&As 2003-02-25
Image Difference (HTML) (DMG) (ZIP)
Demonstrates a way to use Quartz's compositing capability to find the difference between two images.
Sample Code 2003-01-30
PDFView (HTML) (DMG) (ZIP)
Shows how to display or print a multi-page PDF document and scroll an NSscrollview's contents by dragging.
Sample Code 2003-01-23
CGDrawPicture (HTML) (DMG) (ZIP)
Deprecated - Shows how to use the QDPictDrawToCGContext API.
Sample Code 2003-01-14
Color Sampler (HTML) (DMG) (ZIP)
Demonstrates one way to sample the color at a given point in an NSView.
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-Cocoa (HTML) (DMG) (ZIP)
Demonstrates how to use the new ColorSync Device Manager routines in the Cocoa environment.
Sample Code 2003-01-14
Cropped Image (HTML) (DMG) (ZIP)
Demonstrates how to extract a sub-image from another image, and some ways of indicating a selection.
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
Polygons (HTML) (DMG) (ZIP)
Demonstrates the NSBezierPath class, as well as the manipulation of NSView's coordinate space for convenience.
Sample Code 2003-01-14
QTtoCG (HTML) (DMG) (ZIP)
Shows how to create a CGImageRef with the proper ColorSync profile from a QuickTime image on disk.
Sample Code 2003-01-14
Quartz EB (HTML) (DMG) (ZIP)
WWDC 2001 Early Bird Quartz 2D tutorial of vector drawing and PDF import/export.
Sample Code 2003-01-14
RGB Image (HTML) (DMG) (ZIP)
Demonstrates compositing to separate an NSimage into its RGB components, and how to recombine those components.
Sample Code 2003-01-14
RoundTransparentWindow (HTML) (DMG) (ZIP)
Creating (in Cocoa) custom-shaped windows and transparent window content; plus changing the shape of windows dynamically.
Sample Code 2003-01-14
SimpleCocoaJavaMovieCocoa (HTML) (DMG) (ZIP)
Deprecated - Shows how to use the NSMovieView and NSMovie Cocoa Java AppKit classes.
Sample Code 2003-01-14
SonOfSillyBalls (HTML) (DMG) (ZIP)
Draws a bunch of randomly colored, randomly placed, silly balls in a window on the screen.
Sample Code 2003-01-14
Tinted Image (HTML) (DMG) (ZIP)
Demonstrates the use of an NSImage as an off-screen drawing destination.
Sample Code 2003-01-14
Transformed Image (HTML) (DMG) (ZIP)
Shows the effects of a rendering an NSImage in a transformed coordinate space.
Sample Code 2003-01-14
How do I tell if a particular display is being hardware accelerated by Quartz Extreme? (HTML) (日本語 HTML)
QA1218: Describes how to use CGDisplayUsesOpenGLAcceleration to see if a display is accelerated or not.
Technical Q&As 2002-12-04
How can I programmatically determine the DPI of the current video mode? (HTML) (日本語 HTML)
QA1217: Describes how to compute the DPI for a given display in a given mode using Core Graphics.
Technical Q&As 2002-12-02
Image Views (HTML) (PDF)
Explains how to use Cocoa image views.
Guides 2002-11-12
Quartz 2D Interpolation (HTML) (日本語 HTML)
QA1186: Explains how to control Quartz 2D's image interpolation.
Technical Q&As 2002-10-29
CGContextClosePath (HTML)
QA1046: Explains when you should call CGContextClosePath.
Technical Q&As 2001-10-02
Saving the current Core Graphics Path (HTML)
QA1056: Explains that the Core Graphics save and restore GState APIs do not affect the path.
Technical Q&As 2001-10-02
CGContext Bounds (HTML)
QA1048: Explains how to determine the bounds of a CGContext.
Technical Q&As 2001-07-02
CGContextAddLineToPoint, CGContextAddCurveToPoint, et. al. (HTML)
QA1049: Explains why the CGContextAddXYZ APIs don't draw anything immediately.
Technical Q&As 2001-07-02
Drawing a Path Multiple Times (HTML)
QA1047: Explains that path drawing operations consume the path.
Technical Q&As 2001-07-02
Turning Off Core Graphics Clipping (HTML)
QA1050: Explains how to clear the clipping path for a CGContext.
Technical Q&As 2001-07-02
Unexpected CG state changes (HTML)
QA1045: Explains why the Core Graphics drawing state sometimes changes for no apparent reason.
Technical Q&As 2001-07-02