|
| QuartzSurface (cairo_surface_t*cobject, bool has_reference=false) |
| Create a C++ wrapper for the C instance. More...
|
|
| ~QuartzSurface () override |
|
CGContextRef | get_cg_context () const |
| Returns the CGContextRef associated with this surface, or NULL if none. More...
|
|
| Surface (cairo_surface_t*cobject, bool has_reference=false) |
| Create a C++ wrapper for the C instance. More...
|
|
| Surface (const Surface&)=delete |
|
Surface& | operator= (const Surface&)=delete |
|
virtual | ~Surface () |
|
const unsigned char* | get_mime_data (const std::string& mime_type, unsigned long& length) |
| Return mime data previously attached to surface using the specified mime type. More...
|
|
void | set_mime_data (const std::string& mime_type, unsigned char* data, unsigned long length, const SlotDestroy& slot_destroy) |
| Attach an image in the format mime_type to surface. More...
|
|
void | unset_mime_data (const std::string& mime_type) |
| Remove the data from a surface. More...
|
|
void | get_font_options (FontOptions& options) const |
| Retrieves the default font rendering options for the surface. More...
|
|
void | finish () |
| This function finishes the surface and drops all references to external resources. More...
|
|
void | flush () |
| Do any pending drawing for the surface and also restore any temporary modifications cairo has made to the surface's state. More...
|
|
void | mark_dirty () |
| Tells cairo to consider the data buffer dirty. More...
|
|
void | mark_dirty (int x, int y, int width, int height) |
| Marks a rectangular area of the given surface dirty. More...
|
|
void | set_device_offset (double x_offset, double y_offset) |
| Sets an offset that is added to the device coordinates determined by the CTM when drawing to surface. More...
|
|
void | get_device_offset (double& x_offset, double& y_offset) const |
| Returns a previous device offset set by set_device_offset(). More...
|
|
void | set_fallback_resolution (double x_pixels_per_inch, double y_pixels_per_inch) |
| Set the horizontal and vertical resolution for image fallbacks. More...
|
|
void | get_fallback_resolution (double& x_pixels_per_inch, double& y_pixels_per_inch) const |
| This function returns the previous fallback resolution set by set_fallback_resolution(), or default fallback resolution if never set. More...
|
|
SurfaceType | get_type () const |
|
Content | get_content () const |
| This function returns the content type of surface which indicates whether the surface contains color and/or alpha information. More...
|
|
void | copy_page () |
| Emits the current page for backends that support multiple pages, but doesn't clear it, so that the contents of the current page will be retained for the next page. More...
|
|
void | show_page () |
| Emits and clears the current page for backends that support multiple pages. More...
|
|
bool | has_show_text_glyphs () const |
| Returns whether the surface supports sophisticated Context::show_text_glyphs() operations. More...
|
|
void | write_to_png (const std::string& filename) |
| Writes the contents of surface to a new file filename as a PNG image. More...
|
|
void | write_to_png_stream (const SlotWriteFunc& write_func) |
| Writes the Surface to the write function. More...
|
|
void | write_to_png (cairo_write_func_t write_func, void* closure) |
|
RefPtr< Device > | get_device () |
| This function returns the device for a surface. More...
|
|
cobject* | cobj () |
| Provides acces to the underlying C cairo surface. More...
|
|
const cobject* | cobj () const |
| Provides acces to the underlying C cairo surface. More...
|
|
|
static RefPtr< QuartzSurface > | create (CGContextRef cg_context, int width, int height) |
| Creates a Quartz surface that wraps the given CGContext. More...
|
|
static RefPtr< QuartzSurface > | create (Format format, int width, int height) |
| Creates a Quartz surface backed by a CGBitmap. More...
|
|
static RefPtr< Surface > | create (const RefPtr< Surface > other, Content content, int width, int height) |
| Create a new surface that is as compatible as possible with an existing surface. More...
|
|
static RefPtr< Surface > | create (const RefPtr< Surface >& target, double x, double y, double width, double height) |
| Create a new surface that is a rectangle within the target surface. More...
|
|
A QuartzSurface provides a way to render within Apple Mac OS X.
If you want to draw to the screen within a Mac OS X application, you should use this Surface type.
- Note
- For this Surface to be available, cairo must have been compiled with (native) Quartz support (requires Cairo > 1.4.0)
- Since
- 1.4
static RefPtr<QuartzSurface> Cairo::QuartzSurface::create |
( |
CGContextRef |
cg_context, |
|
|
int |
width, |
|
|
int |
height |
|
) |
| |
|
static |
Creates a Quartz surface that wraps the given CGContext.
The CGContext is assumed to be in the standard Cairo coordinate space (that is, with the origin at the upper left and the Y axis increasing downward). If the CGContext is in the Quartz coordinate space (with the origin at the bottom left), then it should be flipped before this function is called. The flip can be accomplished using a translate and a scale; for example:
CGContextTranslateCTM (cgContext, 0.0, height);
CGContextScaleCTM (cgContext, 1.0, -1.0);
All Cairo operations are implemented in terms of Quartz operations, as long as Quartz-compatible elements are used (such as Quartz fonts).
- Parameters
-
cg_context | the CGContext to create a surface for |
- Returns
- the newly created surface
- Since
- 1.4