2D antialiasing?
Charles Lindsey
chl at clerew.man.ac.uk
Fri Dec 12 09:08:38 PST 2008
On Thu, 11 Dec 2008 14:23:51 -0000, Clemens Eisserer
<linuxhippy at gmail.com> wrote:
>> From the plain X Server POV, antialiasing is always going to be hard,
>> because to do it you need to know the background color or pixmap, and
>> the
>> Xserver does not keep track of how you had earlier set it, so it is up
>> to
>> individual toolkits to keep track, and not all of them do.
> Well, using XRender nobody needs to keep track of anything, its just
> composition with a mask (which is generated by the CPU in the case of
> trapezoids).
No, I think you miss my point (or else I miss yours).
AIUI, the purpose of Xrender is to enable as much as possible of the image
information to be stored on the server, rather than in the client
application which may be far away over some network.
So it allows you to to construct your image out of various bits and pieces
which may be more or less transparent. In the simplest cases (yes, I know
you can do more complicated things) you are simply trying to paint some
glyphs on top of a "background". But when you have combined those
together, all the server is allowed to store is the result of the
compositing - i.e. it has no knowledge of what was the original background
and was was the added glyph.
And that is no problem at all, until you want to throw away the glyph that
was there before and write a new glyph in its place. And then you need to
know what the original background behind the old glyph was, but the server
does not have that information, and so it has to be kept in the
application, which is precisely what Xrender was trying to avoid :-( .
Now even the original X-11 system allowed you to specify a background (as
a plain color, or as a pixmap - possibly tiled). But it never retained
that information, and it was the lack of that retention that I was
complaining about.
--
Charles H. Lindsey ---------At Home, doing my own thing------------------------
Tel: +44 161 436 6131
Web: http://www.cs.man.ac.uk/~chl
Email: chl at clerew.man.ac.uk Snail: 5 Clerewood Ave, CHEADLE, SK8 3JU, U.K.
PGP: 2C15F1A9 Fingerprint: 73 6D C2 51 93 A0 01 E7 65 E8 64 7E 14 A4 AB A5
More information about the xorg
mailing list