[cairo] blurring filter

Leon Woestenberg leon.woestenberg at gmail.com
Fri Nov 30 05:35:50 PST 2007


Hello,

I see some people struggling with blurring, like myself a few weeks back.

*Only* for image type surfaces, I came up with an implementation,
which does a modify-in-place blur
with memory requirements that scale O(N) with the blur filter kernel size.

I have variations hereof that perform vertical blurring, and/or take a
dynamically sized Gaussian kernel filter.

I have extracted them from my project and put them online here:

http://www.sidebranch.com/cairo/

with an example output here:

http://www.sidebranch.com/cairo/out.png


Regards,

Leon.


@note that the code comment about "blurring the blue to alpha channel"
is obsolete. It was an early
hack to do an in-place blur for my application.

I still consider my approach to be a hack around missing functionality
in pixman and/or cairo, but I recon
the cairo guys are headed for a much more generic implementation that
is surface type independent?


More information about the cairo mailing list