From 53da7d9a0f2cd3285c008c5a12bdd782f43e1d1b Mon Sep 17 00:00:00 2001 From: Mira Grudzinska Date: Tue, 23 Mar 2021 20:09:50 +0100 Subject: [PATCH] vg_common_svg: added stroke color premultiplication The color of a stroke has to be premultiplied before beeing redirected to evas_vg_shape_stroke_color_set. Change-Id: I15364019db8129e5a46d975b4bcfc586f4c71d61 --- src/static_libs/vg_common/vg_common_svg.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/static_libs/vg_common/vg_common_svg.c b/src/static_libs/vg_common/vg_common_svg.c index e6f0223..518a34a 100644 --- a/src/static_libs/vg_common/vg_common_svg.c +++ b/src/static_libs/vg_common/vg_common_svg.c @@ -824,14 +824,16 @@ _apply_vg_property(Svg_Node *node, Efl_VG *vg, Efl_VG *parent, Vg_File_Data *vg_ else if (style->stroke.paint.cur_color) { // apply the current style color - evas_vg_shape_stroke_color_set(vg, style->r, style->g, - style->b, style->stroke.opacity); + float fa = ((float) style->stroke.opacity / 255); + evas_vg_shape_stroke_color_set(vg, ((float) style->r) * fa, ((float) style->g) * fa, + ((float) style->b) * fa, style->stroke.opacity); } else { // apply the stroke color - evas_vg_shape_stroke_color_set(vg, style->stroke.paint.r, style->stroke.paint.g, - style->stroke.paint.b, style->stroke.opacity); + float fa = ((float) style->stroke.opacity / 255); + evas_vg_shape_stroke_color_set(vg, ((float) style->stroke.paint.r) * fa, ((float) style->stroke.paint.g) * fa, + ((float) style->stroke.paint.b) * fa, style->stroke.opacity); } //apply node opacity to stroke color -- 2.7.4