Hi all,

I've added Xft for nice Anti-Aliased fonts to my (basically) X11
application. What I can't work out is how to retrieve the alpha
channel bytes of the rendered text so I can store it in a local Alpha
buffer.

The snippet of code I am using to render is:

XftDraw * t_d = XftDrawCreate ( display, surface, visual, cmap);
XftDraw * t_dmask = XftDrawCreateBitmap ( display, mask );

[snip some color related stuff]

XftDrawString8 ( t_d, &Color,
f -> xft_fstruct,
x ,
y ,
(FcChar8*)s, l ) ;

XftDrawString8 ( t_dmask, &Color,
f -> xft_fstruct,
x,
y ,
(FcChar8*)s, l ) ;


XftDrawDestroy ( t_d ) ;
XftDrawDestroy ( t_dmask ) ;


The mask is used as a 1-bit mask that it dynamically changed to mask
out regions of the image. It is merged with the local Alpha buffer
before that is used to re-build a client side ARGB.


Any ideas how to extract the Alpha values of the rendered text ?

Thanks,

Tim.