Re: [Render] OpenType support in Pango



    >> Currently, I just use a request per glyph, both for the X backend and
    >> for the Xft/Xrender backend. I could optimize this at render time by
    >> taking into account knowledge of the natural advance widths of the
    >> glyphs. A request that took multiple positioned glyphs would also be an
    >> optimization.

    Keith> It's not so much the performance effect, but the effect of
    Keith> rendering overlapping or adjacent glyphs.  Render allows glyphs to
    Keith> be added together before being composited to the screen, but you
    Keith> need to transmit all of the overlapping glyphs in one request.

    Keith> The Render protocol (and server) already supports this encoding,
    Keith> but there's no client side library support.  I suggest a simple
    Keith> API:

To have an API like this is very handy.  My current rendering code uses
relative x and y offsets from the current drawing position (currentpoint in
Postscript terms) for the combining characters.

How about:

  typedef struct _XftRenderChar {
    INT16 dx;
    INT16 dy;
    XftChar32 c;
  } XftRenderChar;

  void XftDrawRenderString(...);
-----------------------------------------------------------------------------
Mark Leisher
Computing Research Lab            Cinema, radio, television, magazines are a
New Mexico State University       school of inattention: people look without
Box 30001, Dept. 3CRL             seeing, listen without hearing.
Las Cruces, NM  88003                            -- Robert Bresson




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]