[pango/wip/matthiasc/alpha: 3/4] Add alpha support to PangoCairoRenderer
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pango/wip/matthiasc/alpha: 3/4] Add alpha support to PangoCairoRenderer
- Date: Wed, 12 Aug 2015 00:41:58 +0000 (UTC)
commit 9f44c20b3ca62f0de2cc9adc64c14109174c3a8a
Author: Matthias Clasen <mclasen redhat com>
Date: Tue Aug 11 15:39:22 2015 -0400
Add alpha support to PangoCairoRenderer
Make PangoCairoRenderer use cairo_set_source_rgba() to apply
colors with alpha. Note that this means we are only using the
alpha if the corresponding color has been set.
pango/pangocairo-render.c | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
---
diff --git a/pango/pangocairo-render.c b/pango/pangocairo-render.c
index 3855fc2..b1efb37 100644
--- a/pango/pangocairo-render.c
+++ b/pango/pangocairo-render.c
@@ -191,12 +191,17 @@ set_color (PangoCairoRenderer *crenderer,
PangoRenderPart part)
{
PangoColor *color = pango_renderer_get_color ((PangoRenderer *) (crenderer), part);
+ guint16 alpha = pango_renderer_get_alpha ((PangoRenderer *) (crenderer), part);
+
+ if (!alpha)
+ alpha = 0xffff;
if (color)
- cairo_set_source_rgb (crenderer->cr,
- color->red / 65535.,
- color->green / 65535.,
- color->blue / 65535.);
+ cairo_set_source_rgba (crenderer->cr,
+ color->red / 65535.,
+ color->green / 65535.,
+ color->blue / 65535.,
+ alpha / 65535.);
}
/* note: modifies crenderer->cr without doing cairo_save/restore() */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]