Quartz 2D Opaque Data Types
The Quartz 2D API defines a variety of opaque data types in addition
to graphics contexts. Because the API is part of the Core Graphics
framework, the data types and the routines that operate on them use
the CG prefix.Quartz 2D creates objects from opaque data types that your application
operates on to achieve a particular drawing output. Figure 1-3 shows
the sorts of results you can achieve when you apply drawing operations
to three of the objects provided by Quartz 2D. For example:You can rotate and display a PDF page by creating a PDF page object,
applying a rotation operation to the graphics context, and asking
Quartz 2D to draw the page to a graphics context.You can draw a
pattern by creating a pattern object, defining the shape that makes up
the pattern, and setting up Quartz 2D to use the pattern as paint when
it draws to a graphics context.You can fill an area with an axial or
radial shading by creating a shading object, providing a function that
determines the color at each point in the shading, and then asking
Quartz 2D to use the shading as a fill color.
I am having trouble understanding this part of apple reference guide
and specifically the things i have bold, like what "them" is refereed to?
And please clarify about opaque data type generally , not in c or c++ terms.
Thanks in advance,
Regards.
The phrase opaque type simply means a type that contains or references data that you’re not supposed to look at, or even be able to look at. For example, Quartz provides the
CGContextReftype. Functions are provided for creating, obtaining, manipulating, and releasing a graphics context using an instance ofCGContextRef, but you can’t look inside aCGContextRefand see what’s inside. You can’t reasonably use or change a context without using the functions provided.