GNU bug report logs -
#36315
27.0.50; SVG transparency handling is inaccurate
Previous Next
Reported by: Pip Cet <pipcet <at> gmail.com>
Date: Thu, 20 Jun 2019 20:28:02 UTC
Severity: normal
Found in version 27.0.50
Done: Alan Third <alan <at> idiocy.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
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 <at> math.s.chiba-u.ac.jp
[svg-cairo.diff (application/octet-stream, attachment)]
This bug report was last modified 3 years and 219 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.