> why does the framebuffer need to be consulted when the background is a known,
> solid color?

the underlying operation is just plain draw,
and drawing text corresponds to drawing 
solid black through the font (as a mask)
onto the destination image.  if the mask has
fractional alpha, that requires reading the
destination image to do the mixing.

the destination image might in this case 
be a known solid color, but in general it
need not be.

you could address this by adding a fourth argument
to memdraw and then using it inside devdraw
to specify a "read from this instead of the destination"
image.  it's not clear to me that this is worth the bother,
and it makes the interface less clean.  you'd also have
to redo libframe to use stringbg everywhere.

russ

Reply via email to