37 if (cairo_surface_get_content(in) == CAIRO_CONTENT_COLOR_ALPHA) {
48 cairo_t *out_ct = cairo_create(out);
54 cairo_set_source_surface(out_ct, in, 0, 0);
58 cairo_destroy(out_ct);
60 cairo_surface_destroy(out);
91 if (input < 0)
return;
cairo_surface_t * ink_cairo_surface_create_identical(cairo_surface_t *s)
Create a surface that differs only in pixel content.
void set_cairo_surface_ci(cairo_surface_t *surface, SPColorInterpolation ci)
Set the color_interpolation_value for a Cairo surface.
Cairo integration helpers.
3x3 matrix representing an affine transformation.
Axis aligned, non-empty rectangle.
bool can_handle_affine(Geom::Affine const &) const override
Indicate whether the filter primitive can handle the given affine.
std::vector< int > _input_image
bool uses_background() const override
void render_cairo(FilterSlot &) const override
double complexity(Geom::Affine const &ctm) const override
void set_input(int input) override
Sets the input slot number 'slot' to be used as input in rendering filter primitive 'primitive' For f...
SPColorInterpolation color_interpolation
Geom::Rect filter_primitive_area(FilterUnits const &units) const
Returns the filter primitive area in user coordinate system.
void set_primitive_area(int slot, Geom::Rect &area)
cairo_surface_t * getcairo(int slot)
Returns the pixblock in specified slot.
void set(int slot, cairo_surface_t *s)
Sets or re-sets the pixblock associated with given slot.
FilterUnits const & get_units() const
struct _cairo_surface cairo_surface_t
@ NR_FILTER_BACKGROUNDALPHA
@ NR_FILTER_BACKGROUNDIMAGE
Helper class to stream background task notifications as a series of messages.
Definition of functions needed by several filters.