[cairo] _clip_and_composite_with_mask grays out subpixel antialiasing?

Karl Tomlinson k.tomlinson at auckland.ac.nz
Wed Mar 1 15:18:16 PST 2006


I've been experimenting with subpixel antialiasing in poppler
(cairo backend) and found that often the colors are grayed out.

It seems that this is related to whether the clip
in _clip_and_composite has a surface.

If clip->surface is null, then (*draw_func) works as expected.

However if clip->surface is non-null, then
_clip_and_composite_with_mask is used and (from what I can work
out) it draws to an A8 surface/mask then uses that to describe
what to fill with the pattern.  As the pattern has only one color
(black is this case), there is not the expected variation in the
RGB colors.

(I was looking at this in cairo-1.0.2 but the results at least are
the same with a copy from git://git.cairographics.org/git/cairo.)

Can someone tell me please whether this description is accurate and
whether this is expected?

Is the loss of variation in colors a result of an algorithm that
wasn't designed for subpixel antialiasing, or is the problem in
the parameters to _clip_and_composite (or elsewhere)?


(This message was reposted as the initial post, Wed, 01 Mar 2006
18:25:00 +1300 has not shown up in the archives.)

More information about the cairo mailing list