[cairo] Mozilla on Cairo

Robert O'Callahan rocallahan at gmail.com
Thu Apr 21 18:25:05 PDT 2005


On 4/22/05, Carl Worth <cworth at cworth.org> wrote:
> 
> On Fri, 22 Apr 2005 11:23:03 +1200, Robert O'Callahan wrote:
> > I've got Cairo-based Mozilla into a barely usable state.
> 
> Hey, that is fantastic news. Well done! Is cairo rendering everything
> in the screenshot, or just the main content pane?


Everything. (Except for the window manager borders, of course.)

> Also, this page doesn't really show it, but we are running into the 
> problem of
> > antialiased fills causing artifacts where two shapes share a
> > non-pixel-aligned edge. I really want to add a mode to cairo_t that 
> turns
> > antialiasing off. What are the chances that that would be accepted?
> 
> We could add such a thing, (David Reveman even made a patch and sent
> it to the list once). But for this particular problem, I'd be much
> more inclined to implement (or accept a patch for) a full-scene
> antialiasing surface. The overall quality wouldn't be as good as
> standard cairo antialiasing (for scenes without the seam problems),
> but it would solve the seam problem in a way that would look a lot
> better than disabling antialiasing completely.


If I understand correctly, that solution would be a combination of "disable 
coverage-based antialiasing" and "render to a larger surface, then scale 
down with pixel averaging". That sounds good, but on low-end machines we'll 
probably want the scale factor to be 1x1. Also, I think it really would be 
good to be able to decide on per-shape (or ideally per-edge) basis whether 
coverage-based antialiasing is on or not; there are some shapes (edges) 
where we know there won't be adjacent edges, or we don't care. Also, are you 
sure this should be a new surface type? It seems to me that we want this 
feature to be applicable to glitz and xlib and so on.

I have another question, about image drawing. All our image drawing uses 
patterns because we support drawing a subrectangle of the image, and the 
easiest way to do that is to use the pattern matrix. Would it be faster (or 
otherwise desirable) to use show_image_surface when the subrectangle is the 
full image?

Rob
-- 
["Therefore, my dear friends, as you have always obeyed–not only in my
presence, but now much more in my absence–continue to work out your
salvation with fear and trembling, for it is God who works in you to will
and to act according to his good purpose." Philippians 2:12-13.]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freedesktop.org/archives/cairo/attachments/20050422/f417d145/attachment.html


More information about the cairo mailing list