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 Fri, 21 Jun 2019 05:26:53 +0900,
Pip Cet wrote:
>
> [1 <text/plain; UTF-8 (7bit)>]
> Evaluate the following in emacs -Q:
>
> (require 'svg)
>
> (defun make-image (color)
> (let ((svg (svg-create 100 100)))
> (svg-rectangle svg 0 0 100 100 :fill color)
> (svg-image svg)))
>
> (set-frame-parameter (window-frame) 'background-color "black")
>
> (insert (propertize " " 'display (make-image "#f00000")))
>
> The expected result is a rectangle (on black background) of color
> #f00000. The actual result is a rectangle of color #ef0000. For black
> backgrounds, white is no longer representable.
>
> This is related to bug #36304, but much easier to fix.
>
> Patch attached.
An alternative way would be to use rsvg_handle_render_cairo, which is
recommended by librsvg, and let it blend with the background color.
Patch attached. Note that this does not require --with-cairo.
Raising the required version of librsvg to 2.14 is not a problem, as
we are already using rsvg_handle_get_dimensions that requires that
version. Is Windows librsvg DLL compiled with libcairo?
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 218 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.