--- Comment #53 from Clemens Eisserer <> ---
I did some digging, and although I am far from a solution (even a stop-gap
one), these are my findings:

- the gtk3 vcl plugin seems to render to a software surface, toms of cycles are
wasted scaling the input bitmap over and over in pixman library routines:

SvpSalGraphics::drawAlphaBitmap -> composite_boxes -> general_composite_rect

- the gtk and x11 vcl plugins seem to render to a native surface (which is
usually a lot better), however both are doing stupid stuff (extracting the
alpha values again and again) - therefore reading back image data from the
XServer using XGetImage (no-go for good performance):

drawinglayer::impBufferDevice::paint -> AlphaMask::AlphaMask -> Bitmap::Convert
-> ... ->  X11SalBitmap::ImplCreateDIB -> XGetImage

Maybe I can find howto switch gtk3 to using a native XRender surface (these
days XRender is rather capable, layered above OpenGL (glamor) anyway) and then
work on the second issue...

You are receiving this mail because:
You are the assignee for the bug.
Libreoffice-bugs mailing list

Reply via email to