summaryrefslogtreecommitdiff
path: root/boilerplate
diff options
context:
space:
mode:
authorAnton Danilkin <afdw@yandex.ru>2021-05-01 23:11:13 +0200
committerAnton Danilkin <afdw@yandex.ru>2021-05-01 23:14:24 +0200
commitbd487e64fc3680abf2dd9e165c7506043132229d (patch)
tree753fcf60da52a72309361e35cd206d34ec912783 /boilerplate
parenta3e01d9e8c79c4dddd401af15bf37db7d75435ec (diff)
downloadcairo-bd487e64fc3680abf2dd9e165c7506043132229d.tar.gz
Add support for CAIRO_CONTENT_COLOR
Diffstat (limited to 'boilerplate')
-rw-r--r--boilerplate/cairo-boilerplate-svg.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/boilerplate/cairo-boilerplate-svg.c b/boilerplate/cairo-boilerplate-svg.c
index 2787e8567..0c9a3833e 100644
--- a/boilerplate/cairo-boilerplate-svg.c
+++ b/boilerplate/cairo-boilerplate-svg.c
@@ -218,8 +218,6 @@ _cairo_boilerplate_svg_get_image_surface (cairo_surface_t *surface,
cairo_surface_t *image;
double x_offset, y_offset;
double x_scale, y_scale;
- svg_target_closure_t *ptc = cairo_surface_get_user_data (surface,
- &svg_closure_key);
if (page != 0)
return cairo_boilerplate_surface_create_in_error (CAIRO_STATUS_SURFACE_TYPE_MISMATCH);
@@ -230,15 +228,6 @@ _cairo_boilerplate_svg_get_image_surface (cairo_surface_t *surface,
cairo_surface_set_device_offset (image, x_offset, y_offset);
cairo_surface_set_device_scale (image, x_scale, y_scale);
surface = _cairo_boilerplate_get_image_surface (image, 0, width, height);
- if (ptc->target) {
- cairo_surface_t *old_surface = surface;
- surface = cairo_image_surface_create(CAIRO_FORMAT_RGB24, width, height);
- cairo_t *cr = cairo_create (surface);
- cairo_set_source_surface (cr, old_surface, 0, 0);
- cairo_paint (cr);
- cairo_destroy (cr);
- cairo_surface_destroy (old_surface);
- }
cairo_surface_destroy (image);
return surface;
@@ -293,6 +282,19 @@ static const cairo_boilerplate_target_t targets[] = {
_cairo_boilerplate_svg_cleanup,
NULL, NULL, FALSE, TRUE, TRUE
},
+ {
+ "svg11", "svg", ".svg", NULL,
+ CAIRO_SURFACE_TYPE_RECORDING, CAIRO_CONTENT_COLOR, 1,
+ "cairo_svg_surface_create",
+ _cairo_boilerplate_svg11_create_surface,
+ cairo_surface_create_similar,
+ _cairo_boilerplate_svg_force_fallbacks,
+ _cairo_boilerplate_svg_finish_surface,
+ _cairo_boilerplate_svg_get_image_surface,
+ _cairo_boilerplate_svg_surface_write_to_png,
+ _cairo_boilerplate_svg_cleanup,
+ NULL, NULL, FALSE, TRUE, TRUE
+ },
};
CAIRO_BOILERPLATE (svg, targets)