[cairo] cairo-gl glyph rendering performance

Bill Spitzak spitzak at gmail.com
Tue May 3 12:07:36 PDT 2011


I think it was probably done because they are using a+b-ab to composite 
the glyphs together, which is what I expected cairo to do as well, and 
this makes the artifacts as small as possible. There will always be a 
small artifact in  the antialiased edge due to the two 
partially-transparent pixels compositing but this avoids a white line 
between them, and also allows the renderer to be somewhat inaccurate.

Using MAX would remove the artifacts for these overlapping ones, but it 
does mean they must overlap by at least 1 pixel. Possibly they are doing 
this.

In any case it might be worthwhile to investigate what Microsoft is 
doing, since the fonts are probably going to be designed to work with 
that. Might want to check Cocoa as well.

Jonathan Morton wrote:
> On Mon, 2011-05-02 at 21:34 -0400, Behdad Esfahbod wrote:
>> However, Microsoft recommends that Arabic glyphs should have their
>> baseline connection slightly bleed outside the glyph boundary.
> 
> Clearly, whoever at Microsoft thought that up was not thinking of
> efficient antialiasing.  It does work for a brute-force supersampling,
> but not the way XRender does it which takes less memory and less compute
> power.
> 


More information about the cairo mailing list