[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#36315: 27.0.50; SVG transparency handling is inaccurate
From: |
YAMAMOTO Mitsuharu |
Subject: |
bug#36315: 27.0.50; SVG transparency handling is inaccurate |
Date: |
Thu, 27 Jun 2019 12:33:46 +0900 |
User-agent: |
Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM/1.14.9 (Gojō) APEL/10.8 EasyPG/1.0.0 Emacs/25.3 (x86_64-pc-linux-gnu) MULE/6.0 (HANACHIRUSATO) |
On Thu, 27 Jun 2019 00:57:48 +0900,
Eli Zaretskii wrote:
>
> > > Maybe it's just me, but I'm uneasy to bypass librsvg and call Cairo
> > > directly for manipulating SVG images. Why doesn't librsvg provide a
> > > way to do this via its own APIs?
> > >
> > > Does anyone else think it's unusual to make such direct calls to what
> > > is essentially a lower-level library?
> >
> > What kind of operations do you think librsvg should provide us with,
> > instead of letting us use cairo?
>
> Those for which you called the Cairo functions directly.
Which one, concretely? Or you mean something in other parts?
+ cairo_surface_t *surface;
+#ifdef USE_CAIRO
+ surface = cairo_image_surface_create_for_data ((unsigned char *) ximg->data,
+ CAIRO_FORMAT_RGB24,
+ width, height,
+ ximg->bytes_per_line);
+#else
+ surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24, width, height);
+#endif
+ if (cairo_surface_status (surface) != CAIRO_STATUS_SUCCESS)
+ goto rsvg_error;
+ cairo_t *cr = cairo_create (surface);
+ cairo_set_source_rgb (cr, background.red / 65535.0,
+ background.green / 65535.0,
+ background.blue / 65535.0);
+ cairo_paint (cr);
+ cairo_set_source_rgb (cr, 0.0, 0.0, 0.0);
+ rsvg_handle_render_cairo (rsvg_handle, cr);
+ cairo_destroy (cr);
+ g_object_unref (rsvg_handle);
> I tried with the second patch. I tried now again with the above one:
> still no rectangle.
Seems like a problem in DLL loading. Please try the attached one.
YAMAMOTO Mitsuharu
mituharu@math.s.chiba-u.ac.jp
svg-cairo.diff
Description: Binary data
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, (continued)
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, YAMAMOTO Mitsuharu, 2019/06/24
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, Eli Zaretskii, 2019/06/24
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, YAMAMOTO Mitsuharu, 2019/06/25
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, Lars Ingebrigtsen, 2019/06/25
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, Eli Zaretskii, 2019/06/26
- bug#36315: 27.0.50; SVG transparency handling is inaccurate,
YAMAMOTO Mitsuharu <=
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, Eli Zaretskii, 2019/06/27
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, YAMAMOTO Mitsuharu, 2019/06/30
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, Eli Zaretskii, 2019/06/30
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, YAMAMOTO Mitsuharu, 2019/06/30