Code

add simplified feed_path_to_cairo functions
[inkscape.git] / src / display / inkscape-cairo.h
1 #ifndef __INKSCAPE_CAIRO_H__
2 #define __INKSCAPE_CAIRO_H__
4 /*
5  * Helper functions to use cairo with inkscape
6  *
7  * Copyright (C) 2007 bulia byak
8  * Copyright (C) 2008 Johan Engelen
9  *
10  * Released under GNU GPL
11  *
12  */
14 #include <2geom/forward.h>
15 #include <cairo/cairo.h>
16 #include "libnr/nr-matrix.h"
17 #include "libnr/nr-maybe.h"
18 #include "libnr/nr-rect.h"
19 class NArtBpath;
20 struct NRPixBlock;
21 class SPCanvasBuf;
23 cairo_t *nr_create_cairo_context_canvasbuf (NRRectL *area, SPCanvasBuf *b);
24 cairo_t *nr_create_cairo_context (NRRectL *area, NRPixBlock *pb);
25 void feed_curve_to_cairo (cairo_t *ct, NArtBpath const *bpath, NR::Matrix trans, NR::Maybe<NR::Rect> area, bool optimize_stroke, double stroke_width);
26 void feed_path_to_cairo (cairo_t *ct, Geom::Path const &path);
27 void feed_path_to_cairo (cairo_t *ct, Geom::Path const &path, Geom::Matrix trans, NR::Maybe<NR::Rect> area, bool optimize_stroke, double stroke_width);
28 void feed_pathvector_to_cairo (cairo_t *ct, Geom::PathVector const &pathv, Geom::Matrix trans, NR::Maybe<NR::Rect> area, bool optimize_stroke, double stroke_width);
29 void feed_pathvector_to_cairo (cairo_t *ct, Geom::PathVector const &pathv);
31 #endif
32 /*
33   Local Variables:
34   mode:c++
35   c-file-style:"stroustrup"
36   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
37   indent-tabs-mode:nil
38   fill-column:99
39   End:
40 */
41 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :