diff options
-rw-r--r-- | rsvg-cairo-draw.c | 30 | ||||
-rw-r--r-- | rsvg-styles.c | 14 | ||||
-rw-r--r-- | rsvg-styles.h | 20 |
3 files changed, 19 insertions, 45 deletions
diff --git a/rsvg-cairo-draw.c b/rsvg-cairo-draw.c index 716709e7..91a164d5 100644 --- a/rsvg-cairo-draw.c +++ b/rsvg-cairo-draw.c @@ -45,32 +45,6 @@ static const cairo_user_data_key_t surface_pixel_data_key; static void -_rsvg_cairo_set_shape_antialias (cairo_t * cr, ShapeRenderingProperty aa) -{ - if (SHAPE_RENDERING_AUTO == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_DEFAULT); - else if (SHAPE_RENDERING_OPTIMIZE_SPEED == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_NONE); - else if (SHAPE_RENDERING_CRISP_EDGES == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_NONE); - else if (SHAPE_RENDERING_GEOMETRIC_PRECISION == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_DEFAULT); -} - -static void -_rsvg_cairo_set_text_antialias (cairo_t * cr, TextRenderingProperty aa) -{ - if (TEXT_RENDERING_AUTO == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_DEFAULT); - else if (TEXT_RENDERING_OPTIMIZE_SPEED == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_NONE); - else if (TEXT_RENDERING_OPTIMIZE_LEGIBILITY == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_DEFAULT); - else if (TEXT_RENDERING_GEOMETRIC_PRECISION == aa) - cairo_set_antialias (cr, CAIRO_ANTIALIAS_DEFAULT); -} - -static void rsvg_pixmap_destroy (gchar * pixels, gpointer data) { g_free (pixels); @@ -415,7 +389,7 @@ rsvg_cairo_render_pango_layout (RsvgDrawingCtx * ctx, PangoLayout * layout, doub PangoRectangle ink; RsvgBbox bbox; - _rsvg_cairo_set_text_antialias (render->cr, state->text_rendering_type); + cairo_set_antialias (render->cr, state->text_rendering_type); _set_rsvg_affine (render, state->affine); @@ -485,7 +459,7 @@ rsvg_cairo_render_path (RsvgDrawingCtx * ctx, const RsvgBpathDef * bpath_def) cr = render->cr; - _rsvg_cairo_set_shape_antialias (cr, state->shape_rendering_type); + cairo_set_antialias (cr, state->shape_rendering_type); _set_rsvg_affine (render, state->affine); diff --git a/rsvg-styles.c b/rsvg-styles.c index 44bc5c53..279dbcde 100644 --- a/rsvg-styles.c +++ b/rsvg-styles.c @@ -37,6 +37,20 @@ #define RSVG_DEFAULT_FONT "Times New Roman" +enum { + SHAPE_RENDERING_AUTO = CAIRO_ANTIALIAS_DEFAULT, + SHAPE_RENDERING_OPTIMIZE_SPEED = CAIRO_ANTIALIAS_NONE, + SHAPE_RENDERING_CRISP_EDGES = CAIRO_ANTIALIAS_NONE, + SHAPE_RENDERING_GEOMETRIC_PRECISION = CAIRO_ANTIALIAS_DEFAULT +}; + +enum { + TEXT_RENDERING_AUTO = CAIRO_ANTIALIAS_DEFAULT, + TEXT_RENDERING_OPTIMIZE_SPEED = CAIRO_ANTIALIAS_NONE, + TEXT_RENDERING_OPTIMIZE_LEGIBILITY = CAIRO_ANTIALIAS_DEFAULT, + TEXT_RENDERING_GEOMETRIC_PRECISION = CAIRO_ANTIALIAS_DEFAULT +}; + typedef struct _StyleValueData { gchar *value; gboolean important; diff --git a/rsvg-styles.h b/rsvg-styles.h index 4e7c6940..0c2d8239 100644 --- a/rsvg-styles.h +++ b/rsvg-styles.h @@ -58,20 +58,6 @@ typedef enum { } UnicodeBidi; typedef enum { - SHAPE_RENDERING_AUTO = 0, - SHAPE_RENDERING_OPTIMIZE_SPEED, - SHAPE_RENDERING_CRISP_EDGES, - SHAPE_RENDERING_GEOMETRIC_PRECISION -} ShapeRenderingProperty; - -typedef enum { - TEXT_RENDERING_AUTO = 0, - TEXT_RENDERING_OPTIMIZE_SPEED, - TEXT_RENDERING_OPTIMIZE_LEGIBILITY, - TEXT_RENDERING_GEOMETRIC_PRECISION -} TextRenderingProperty; - -typedef enum { RSVG_ENABLE_BACKGROUND_ACCUMULATE, RSVG_ENABLE_BACKGROUND_NEW } RsvgEnableBackgroundType; @@ -201,10 +187,10 @@ struct _RsvgState { cairo_operator_t comp_op; RsvgEnableBackgroundType enable_background; - ShapeRenderingProperty shape_rendering_type; + cairo_antialias_t shape_rendering_type; gboolean has_shape_rendering_type; - - TextRenderingProperty text_rendering_type; + + cairo_antialias_t text_rendering_type; gboolean has_text_rendering_type; GHashTable *styles; |