[cairo] Sub-pixel Font Filtering in 1.10

Carl Worth cworth at cworth.org
Fri Jan 15 15:56:15 PST 2010

On Fri, 15 Jan 2010 19:09:38 +0000, Freddie Witherden <freddie at witherden.org> wrote:
> Possibly, however, some distributions are patent conscious. The easier we can 
> make their lives the better.

Distributions can patch cairo. And anyone can contribute patches to
cairo with justification.

But "someone might have difficulty unless you change this" isn't

> <Rant>
> Moreover what is *any* test suite for Cairo doing relying on the pixel output 
> of FreeType!?! Even minor releases of FreeType (e.g., 2.3.9 -> 2.3.11) change 
> the pixel output for given fonts at different sizes. It is one of the main 
> advantages of the auto-hinter --- that it can be improved retroactively. Any 
> test suite relying on non-invariant properties of other libraries deserves to 
> break. Regularly.
> </Rant>

We rely on the pixel output of cairo, because pixel output is the only
thing we've been able to come up with for verifying that cairo
works. When freetype, (or ghostscript, or poppler, etc.), change, then
the "correct" results of the test suite change as well. That's annoying,
but we haven't found a way to avoid that and still get the testing we

So for now, we document the various versions of the various
rasterization tools that are used to generate the "correct" results from
the test suite. And yes, this does impose a fair amount of burden on
someone trying to get the test suite to pass without errors.

One of the things we've been doing is to reduce the reliance of the test
suite on a particular rasterizer (such as freetype) except for the
specific tests where we are testing code paths within cairo that are
specific to that particular rasterizer.

It's a similar issue that makes the recently-added cairo-builtin font
appealing for use within the test suite.

> However, DIY rasterisation is seldom a sound idea and is likely to alienate 
> users. (Consider Safari on Windows, a case study I cover in my article or the 
> Qt OpenGL back-end, whose text output is often condemned by users.)

At which point do you see the transition from DIY to simply being part
of the system? It's hard for me to find text on my current system that's
not rendered with cairo. (Though I won't claim that I don't have an
unbiased set of applications.)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.cairographics.org/archives/cairo/attachments/20100115/cb51aad3/attachment-0001.pgp 

More information about the cairo mailing list