2 #include "cairo-boilerplate-private.h"
4 #include <cairo-skia.h>
6 static cairo_surface_t *
7 _cairo_boilerplate_skia_create_surface (const char *name,
8 cairo_content_t content,
13 cairo_boilerplate_mode_t mode,
16 cairo_format_t format;
20 if (content == CAIRO_CONTENT_COLOR_ALPHA) {
21 format = CAIRO_FORMAT_ARGB32;
22 } else if (content == CAIRO_CONTENT_COLOR) {
23 format = CAIRO_FORMAT_RGB24;
28 return cairo_skia_surface_create (format, width, height);
31 static const cairo_boilerplate_target_t targets[] = {
33 "skia", "skia", NULL, NULL,
34 CAIRO_SURFACE_TYPE_SKIA, CAIRO_CONTENT_COLOR_ALPHA, 0,
35 "cairo_skia_surface_create",
36 _cairo_boilerplate_skia_create_surface,
37 cairo_surface_create_similar,
39 _cairo_boilerplate_get_image_surface,
40 cairo_surface_write_to_png,
41 NULL, NULL, NULL, TRUE, FALSE, FALSE
44 "skia", "skia", NULL, NULL,
45 CAIRO_SURFACE_TYPE_SKIA, CAIRO_CONTENT_COLOR, 0,
46 "cairo_skia_surface_create",
47 _cairo_boilerplate_skia_create_surface,
48 cairo_surface_create_similar,
50 _cairo_boilerplate_get_image_surface,
51 cairo_surface_write_to_png,
52 NULL, NULL, NULL, FALSE, FALSE, FALSE
55 CAIRO_BOILERPLATE (skia, targets)