[cairo] Antialiasing and round, bevelled widgets (was: Cairo developers conference call...)

Carl Worth cworth at cworth.org
Tue Oct 19 09:11:54 PDT 2004

On Mon, 18 Oct 2004 18:38:10 -0400, "Peter Dennis Bartok" wrote:
> It seems that at this point it's apparently down to personal preference, but 
> I like my widgets crisp looking, not fuzzy. Those things become extremely 
> noticeable on a digitially driven LCD display.

I also like crisp, non-fuzzy widgets on a digitally driven LCD display,
so apparently there are still some other criteria that you and I are
using to establish this distinction in preference.

Before we talk about "preference" though, we need a choice. Let me try
to draw some non-antialiased widgets at the same size as those I drew
yesterday to make this discussion concrete.

> Out of curiosity, if I have a widget of 2 pixels wide, with the .5 logic, I 
> can only fit one pixel into that space, then, right? If so, wouldn't I 
> always have an 'untouchable' line on the left and top of my rectangular 
> area?

Not unless I'm misunderstanding you. The 0.5 positioning just comes from
the simple fact that the stroked path extends on both sides of the
path. Therefore, to light up a single row of pixels, a path of width 1.0
must be centered within those pixels[*]. But any particular pixel can be
lit up in this fashion.

[*] Or centered within the region contributing to those pixels which
    some of you may consider to have no area.

> I do understand that you are trying to keep cairo's APIs clean and that it's 
> not a pixel oriented library, but somehow I have to find a way to still 
> achieve my goals on top of it since it is the chosen way to implement GDI+ 
> for us. And since I'm not smart enough to just 'hack' cairo to do what we 
> need, I have to keep asking & nagging you. I really appreciate you even 
> still talking about the subject, even though you probably are getting tired 
> of it at this point.

No, I'm not getting tired of it. I really do want to understand what
users of cairo want--particularly when cairo isn't meeting those
needs. It may yet be that you convince me to add a non-antialiasing mode
to cairo, (and it may turn out to not be a huge effort). But I don't
want to do that without a very good understanding of why it's needed. So
I'll ask you to be patient with me as I keep probing deeper.


More information about the cairo mailing list