[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: |
Tue, 25 Jun 2019 08:06:23 +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 Tue, 25 Jun 2019 02:41:03 +0900,
Eli Zaretskii wrote:
>
> librsvg on Windows is indeed build with libcairo, but if we don't get
> the --with-cairo option, we don't probe for the necessary functions,
> so at least theoretically we could have librsvg without Cairo.
I found librsvg actually requires libcairo, not optional. Sorry for
my bogus question and thanks for testing the patch.
> The patch looks quite large. Do we gain anything significant, apart
> of the appraisal of librsvg developers?
1. The current librsvg generates gdk-pixbuf via cairo image surface.
So we can avoid unnecessarily intermediate data structure and
roundtrip of alpha-component processing using cairo directly.
2. If configured --with-cairo, we can do further shortcut. This is
included in the patch attached to this mail. Pip's patch is also
reflected.
3. Image transformations can be applied when rendering to the cairo
surface, not after generating bitmaps. So we can take advantage of
outline format and get better results of scaling. This is not in
the patch. Probably it should be done by a separate commit after
general image transformation code has been stabilized.
> I've built the patch on Windows (you forgot cairo_surface_destroy, so
> I needed to add it), but the result is strange, or maybe I don't
> understand what is expected. I don't see any rectangle of color
> #f00000, I see the entire frame with black background, and a few
> characters in other colors.
When I tested Pip's test case, I started with emacs -Q -rv to avoid
text becomes invisible. I could see a red rectangle on X11. Do you
see such a rectangle without my patch?
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, Pip Cet, 2019/06/20
- bug#36315: 27.0.50; SVG transparency handling is inaccurate, Pip Cet, 2019/06/20
- 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, 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, 2019/06/26
- 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