Value | Meaning |
---|---|
CAIRO_SURFACE_TYPE_IMAGE | The surface is of type image |
CAIRO_SURFACE_TYPE_PDF | The surface is of type pdf |
CAIRO_SURFACE_TYPE_PS | The surface is of type ps |
CAIRO_SURFACE_TYPE_XLIB | The surface is of type xlib |
CAIRO_SURFACE_TYPE_XCB | The surface is of type xcb |
CAIRO_SURFACE_TYPE_GLITZ | The surface is of type glitz |
CAIRO_SURFACE_TYPE_QUARTZ | The surface is of type quartz |
CAIRO_SURFACE_TYPE_WIN32 | The surface is of type win32 |
CAIRO_SURFACE_TYPE_BEOS | The surface is of type beos |
CAIRO_SURFACE_TYPE_DIRECTFB | The surface is of type directfb |
CAIRO_SURFACE_TYPE_SVG | The surface is of type svg |
CAIRO_SURFACE_TYPE_OS2 | The surface is of type os2 |
CAIRO_SURFACE_TYPE_WIN32_PRINTING | The surface is a win32 printing surface |
CAIRO_SURFACE_TYPE_QUARTZ_IMAGE | The surface is of type quartz_image |
CAIRO_SURFACE_TYPE_SCRIPT | The surface is of type script, since 1.10 |
CAIRO_SURFACE_TYPE_QT | The surface is of type Qt, since 1.10 |
CAIRO_SURFACE_TYPE_RECORDING | The surface is of type recording, since 1.10 |
CAIRO_SURFACE_TYPE_VG | The surface is a OpenVG surface, since 1.10 |
CAIRO_SURFACE_TYPE_GL | The surface is of type OpenGL, since 1.10 |
CAIRO_SURFACE_TYPE_DRM | The surface is of type Direct Render Manager, since 1.10 |
CAIRO_SURFACE_TYPE_TEE | The surface is of type 'tee' (a multiplexing surface), since 1.10 |
CAIRO_SURFACE_TYPE_XML | The surface is of type XML (for debugging), since 1.10 |
CAIRO_SURFACE_TYPE_SKIA | The surface is of type Skia, since 1.10 |
CAIRO_SURFACE_TYPE_SUBSURFACE | The surface is a subsurface created with cairo_surface_create_for_rectangle(), since 1.10 |
cairo_surface_type_t is used to describe the type of a given surface. The surface types are also known as "backends" or "surface backends" within cairo.
The type of a surface is determined by the function used to create it, which will generally be of the form cairo_type_surface_create(), (though see cairo_surface_create_similar() as well).
The surface type can be queried with cairo_surface_get_type()
The various cairo_surface_t functions can be used with surfaces of any type, but some backends also provide type-specific functions that must only be called with a surface of the appropriate type. These functions have names that begin with cairo_type_surface<...> such as cairo_image_surface_get_width().
The behavior of calling a type-specific function with a surface of the wrong type is undefined.
New entries may be added in future versions.