A Win32Surface provides a way to render within Microsoft Windows. More...
Public Member Functions | |
Win32Surface (cairo_surface_t*cobject, bool has_reference=false) | |
Create a C++ wrapper for the C instance. | |
virtual | ~Win32Surface () |
HDC | get_dc () const |
Returns the HDC associated with this surface, or NULL if none. | |
RefPtr< ImageSurface > | get_image () |
Returns a ImageSurface that refers to the same bits as the DIB of the Win32 surface. | |
Static Public Member Functions | |
static RefPtr< Win32Surface > | create (HDC hdc) |
Creates a cairo surface that targets the given DC. | |
static RefPtr< Win32Surface > | create (Format format, int width, int height) |
static RefPtr< Win32Surface > | create_with_dib (Format format, int width, int height) |
Creates a device-independent-bitmap surface not associated with any particular existing surface or device context. | |
static RefPtr< Win32Surface > | create_with_ddb (HDC hdc, Format format, int width, int height) |
Creates a device-independent-bitmap surface not associated with any particular existing surface or device context. |
A Win32Surface provides a way to render within Microsoft Windows.
If you want to draw to the screen within a Microsoft Windows application, you should use this Surface type.
Cairo::Win32Surface::Win32Surface | ( | cairo_surface_t * | cobject, |
bool | has_reference = false |
||
) | [explicit] |
Create a C++ wrapper for the C instance.
This C++ instance should then be given to a RefPtr.
cobject | The C instance. |
has_reference | whether we already have a reference. Otherwise, the constructor will take an extra reference. |
virtual Cairo::Win32Surface::~Win32Surface | ( | ) | [virtual] |
static RefPtr<Win32Surface> Cairo::Win32Surface::create | ( | HDC | hdc | ) | [static] |
Creates a cairo surface that targets the given DC.
The DC will be queried for its initial clip extents, and this will be used as the size of the cairo surface. Also, if the DC is a raster DC, it will be queried for its pixel format and the cairo surface format will be set appropriately.
hdc | the DC to create a surface for. |
static RefPtr<Win32Surface> Cairo::Win32Surface::create | ( | Format | format, |
int | width, | ||
int | height | ||
) | [static] |
static RefPtr<Win32Surface> Cairo::Win32Surface::create_with_ddb | ( | HDC | hdc, |
Format | format, | ||
int | width, | ||
int | height | ||
) | [static] |
Creates a device-independent-bitmap surface not associated with any particular existing surface or device context.
The created bitmap will be uninitialized.
hdc | the DC to create a surface for. |
format | format of pixels in the surface to create, |
width | width of the surface, in pixels. |
height | height of the surface, in pixels. |
static RefPtr<Win32Surface> Cairo::Win32Surface::create_with_dib | ( | Format | format, |
int | width, | ||
int | height | ||
) | [static] |
Creates a device-independent-bitmap surface not associated with any particular existing surface or device context.
The created bitmap will be unititialized.
format | format of pixels in the surface to create. |
width | width of the surface, in pixels. |
height | height of the surface, in pixels. |
HDC Cairo::Win32Surface::get_dc | ( | ) | const |
Returns the HDC associated with this surface, or NULL if none.
Also returns NULL if the surface is not a win32 surface.
RefPtr<ImageSurface> Cairo::Win32Surface::get_image | ( | ) |
Returns a ImageSurface that refers to the same bits as the DIB of the Win32 surface.
If the passed-in win32 surface is not a DIB surface, the returned surface will be NULL