ImageSurface.this - multiple declarations
- Function ImageSurface.this
- Function ImageSurface.this
- Function ImageSurface.this
Function ImageSurface.this
Create a ImageSurface
from a existing cairo_surface_t*.
ImageSurface
is a garbage collected class. It will call cairo_surface_destroy
when it gets collected by the GC or when dispose() is called.
Prototype
this(
cairo_surface_t* ptr
);
Warning
ptr
's reference count is not increased by this function!
Adjust reference count before calling it if necessary
Only use this if you know what your doing! This function should not be needed for standard cairoD usage.
Function ImageSurface.this
Creates an image surface of the specified format
and dimensions.
Initially the surface contents are all 0. (Specifically, within
each pixel, each color or alpha channel belonging to format
will
be 0. The contents of bits within a pixel, but not belonging
to the given format
are undefined).
Prototype
this(
cairo_format_t format,
int width,
int height
);
Parameters
Name | Description |
---|---|
format | format of pixels in the surface to create |
width | width of the surface, in pixels |
height | height of the surface, in pixels |
Function ImageSurface.this
Creates an image surface for the provided pixel data
.
The output buffer must be kept around until the Surface
is destroyed or Surface.finish
() is called on the surface.
The initial contents of data
will be used as the initial image
contents; you must explicitly clear the buffer, using, for
example, Context.rectangle
() and Context.fill
() if you
want it cleared.
Note that the stride
may be larger than width
*bytes_per_pixel
to provide proper alignment for each pixel and row.
This alignment is required to allow high-performance rendering
within cairo. The correct way to obtain a legal stride
value is
to call formatStrideForWidth
with the desired format
and
maximum image width
value, and then use the resulting stride
value to allocate the data
and to create the image surface.
See formatStrideForWidth
for example code.
Prototype
this(
ubyte[] data,
cairo_format_t format,
int width,
int height,
int stride
);
Parameters
Name | Description |
---|---|
data | a pointer to a buffer supplied by the application in which to write contents. This pointer must be suitably aligned for any kind of variable, (for example, a pointer returned by malloc). |
format | the format of pixels in the buffer |
width | the width of the image to be stored in the buffer |
height | the height of the image to be stored in the buffer |
stride | the number of bytes between the start of rows in the
buffer as allocated. This value should always be computed
by formatStrideForWidth before allocating
the data buffer. |
Authors
Johannes Pfau | cairoD |
Andrej Mitrovic | cairoD |
cairo team | cairo |
Copyright
License
cairoD wrapper/bindings | Boost License 1.0 |
cairo | LGPL 2.1 / MPL 1.1 |