diff --git a/src/blur.cc b/src/blur.cc index 3b449a1..cb06b3d 100644 --- a/src/blur.cc +++ b/src/blur.cc @@ -25,13 +25,12 @@ #include #include #include +#include "canvas.h" #define ARRAY_LENGTH(a) (sizeof (a) / sizeof (a)[0]) -/* Performs a simple 2D Gaussian blur of radius @radius on surface @surface. */ void -blur_image_surface (cairo_surface_t *surface, int radius) -{ +Canvas::blur(cairo_surface_t *surface, int radius) { cairo_surface_t *tmp; int width, height; int src_stride, dst_stride; @@ -136,6 +135,6 @@ blur_image_surface (cairo_surface_t *surface, int radius) } } - cairo_surface_destroy (tmp); - cairo_surface_mark_dirty (surface); -} + cairo_surface_destroy (tmp); + cairo_surface_mark_dirty (surface); +} \ No newline at end of file diff --git a/src/canvas.h b/src/canvas.h index f933648..e5010f4 100644 --- a/src/canvas.h +++ b/src/canvas.h @@ -40,6 +40,7 @@ class Canvas: public node::ObjectWrap { static Handle SavePNG(const Arguments &args); static Handle StreamPNG(const Arguments &args); inline cairo_surface_t *getSurface(){ return _surface; } + static void blur(cairo_surface_t *surface, int radius); Canvas(int width, int height); private: