I had some general questions about xft:

How does the server handle caching identical glyph masks?
I dont think it can memcmp them, so does it compare
fully qualified font names? if so, it would be taking the
risk that one client has a differently rendered result for
that font- and hence the bitmaps from one would show up
on the other's display. (a rogue x client could mess up
all font displays?)



When rasterizing a rotated glyph, is it efficient to specify
different rotations for individual glyphs within a single
font? It seems that the rotation is part of the font name,
but hopefully the font file is not wholly reparsed for every
different angle a glyph is rendered at. (This may came into
play when rendering text along curves, the rasterization
and font parsing should involve no more work for printing
ABCDE across a bezier curve than in a straight line
(just extra calls to FT_Set_Transform ))
It would be nice to have a more convientient way to rasterize
rotated strings, perhaps an XftDrawString that took a 
transformation matrix (applied to all glyphs in string,
autogenerating proper strikes, etc ).


The last question is: if every app is doing rasterization,
its seems that alot of duplicate work is being done. A
daemon with a version of Xft font manager could be running
which did the rasterizition and caching. Imagine having
20 windows open and the titlebar font is exotic kanjis
that each app is rasterizing them separatly, Instead they
could be rasterized once and given to the apps by read
only shared memory or some such thing. Of course the apps
that want to load their own fonts would still need the
current Xft backend, but the vast majority could link to
a simplfied Xft that gets its strikes from an Xftd.

(extra long term: a line protocol makes xftd a client
oriented xfs replacer, each client relaying the strikes to
the XServer- ultimatly maybe the X server could also use
the Xftd, and the clients configured to use the Xserver as
their Xftd (perhaps right via the existing x connection,
an argument for making the Xftd line protocol xprotocol
compatible))


thx, hopefully none of these are faq.

P.S. I can't wait for randr, it would be very nice to start up a game
of e.j. starcraft in fullsccreen 640x480 8bpp while still having my
desktop apps running 1172x824 32bpp in the background...
_______________________________________________
Render mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/render

Reply via email to