<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
</head>
<body class='hmmessage'>
Thank you very much for all the info!<div>I will try the workaround in the meantime and stay tuned :)<div><br></div><div>Julien<br><br>&gt; Date: Sat, 27 Nov 2010 11:42:35 +0100<br>&gt; Subject: Re: [cairo] cairo-1.10 regression?<br>&gt; From: ranma42@gmail.com<br>&gt; To: julien_bramary@msn.com<br>&gt; CC: cairo@cairographics.org<br>&gt; <br>&gt; On Fri, Nov 26, 2010 at 4:11 PM, Julien Bramary &lt;julien_bramary@msn.com&gt; wrote:<br>&gt; &gt; Hey guys,<br>&gt; &gt; I tried 1.10 today and found some odd glitches in my application. I narrowed<br>&gt; &gt; it down to a vertical and horizontal line crossing showing<br>&gt; &gt; strange&nbsp;artefacts.<br>&gt; &gt; The concerned lines either have a non-integer width or non-integer starting<br>&gt; &gt; and end points.<br>&gt; &gt; Here is the code snippet I used to test this (the code before that paints<br>&gt; &gt; the background to white):<br>&gt; &gt; layer_0 = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 600, 600);<br>&gt; &gt; cairo_t *cr = cairo_create (layer_0);<br>&gt; &gt; cairo_set_source_rgb (cr, 1, 1, 1);<br>&gt; &gt; cairo_paint (cr);<br>&gt; &gt; double x = 50.323;<br>&gt; &gt; double y = 50.768;<br>&gt; &gt; cairo_set_operator (cr, CAIRO_OPERATOR_OVER);<br>&gt; &gt; cairo_set_source_rgb (cr, 0.1f, 0.1f, 0.1f);<br>&gt; &gt; cairo_set_line_width (cr, 6);<br>&gt; &gt; cairo_move_to (cr, x, 0);<br>&gt; &gt; cairo_line_to (cr, x, 600);<br>&gt; &gt; cairo_move_to (cr, 0, y);<br>&gt; &gt; cairo_line_to (cr, 600, y);<br>&gt; &gt; cairo_stroke (cr);<br>&gt; &gt; The screenshots attached clearly show that 1.8.10 is doing the right thing<br>&gt; &gt; with the semi-transparent bits whereas 1.10.0 is not.<br>&gt; &gt; Anyone seen this with 1.10? I couldn't find related bugs in the tracker. I<br>&gt; &gt; just tried with latest Git version and it still happens.<br>&gt; <br>&gt; I can confirm the problem. It is caused by a bug in the implementation of the<br>&gt; rectilinear rasterizer.<br>&gt; <br>&gt; A temporary workaround might be to avoid the rectilinear rasterizer, for<br>&gt; example by adding a degenerate curve:<br>&gt; <br>&gt; cairo_rel_curve_to (cr, 0, 0, 0, 0, 0, 0);<br>&gt; <br>&gt; right before stroking.<br>&gt; <br>&gt; I'm working on fixing the implementation, but it will probably require some<br>&gt; nontrivial changes to the rectilinear rasterizer.<br>&gt; <br>&gt; Andrea<br></div></div>                                               </body>
</html>