[cairo-bugs] [Bug 54991] New: Strokes aren't fully rendered at ends
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Sun Sep 16 12:09:19 PDT 2012
https://bugs.freedesktop.org/show_bug.cgi?id=54991
Bug #: 54991
Summary: Strokes aren't fully rendered at ends
Classification: Unclassified
Product: cairo
Version: 1.12.0
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: medium
Component: general
AssignedTo: cworth at cworth.org
ReportedBy: b7.10110111 at gmail.com
QAContact: cairo-bugs at cairographics.org
Created attachment 67254
--> https://bugs.freedesktop.org/attachment.cgi?id=67254
Comparison of new and old cairo renders
I'm developing oxygen-gtk, and it uses cairo for all its rendering. After I
updated to cairo-1.12 series, windeco button icons stopped rendering correctly.
See screenshot - in lowest example the lines seem shorter than in the middle
one. The upper example shows QPainter rendering which uses the same coords and
is the reference (qt-)oxygen implementation. This used to work correctly in
cairo-1.8 series.
How to reproduce:
1. compile oxygen-gtk with passing "-DBUILD_DECO_TEST=1" to cmake
2. install oxygen-gtk, run oxygen-gtk-deco
3. compare to renders in the screenshot
I've used git-bisect, here's the result:
545f30856aac98199a49cf66c72dbcb66c1f3a4f is the first bad commit
commit 545f30856aac98199a49cf66c72dbcb66c1f3a4f
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Mon Aug 15 09:44:03 2011 +0100
stroke: Convert the outlines into contour and then into a polygon
In step 1 of speeding up stroking, we introduce contours as a means for
tracking the connected edges around the stroke. By keeping track of
these chains, we can analyse the edges as we proceed and eliminate
redundant vertices speeding up rasterisation.
Coincidentally fixes line-width-tolerance (looks like a combination of
using spline tangent vectors and tolerance).
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
:040000 040000 288e083453c8201e22857190f04dc1dab7b1d715
d4ae5bd2c4569e3c80fc0b0e2ec8cd22a475b635 M src
:040000 040000 44d5f22dbd42f0b41134031027314caafe92add3
9f05f71a73c59936de4ef23b5c5d710542787d5b M util
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.
More information about the cairo-bugs
mailing list