Phil Race wrote:
I'm not sure at which level you (or rather XRender) are caching the glyphs. You can certainly cache the glyph images, as we do for OGL/D3D (see AccelGlyphCache.c), but I don't see how you could (or would want to) cache position information, etc.


It makes sense to do the same as OGL, if you can. Note that the
GlyphInfo struct has a field "struct _CacheCellInfo *cellInfo" which
is used by OGL/D3D so that if the glyph is freed, it knows to tell the
OGL/D3D and in Clemen's case, XRender cache to free it too.
As Chris says, see AccelGlyphCache.c.
This presumes that XRender and OpenGL aren't both in use at
the same time, which I expect will be true, otherwise they'd
be fighting over that field.

  In 6u10 the AccelGlyph has been improved to support multiple caches
  per glyph. For example, for the D3D pipeline the same glyph
  can be cached in a textures per screen (since each d3d device
  has its own cache).

  When this code makes it to openjdk it will make it possible to have
  both opengl and xrender caches at the same time.

  Thanks,
    Dmitri

Reply via email to