49 #ifdef CAIRO_HAS_SVG_SURFACE
50 #include <cairo-svg.h>
52 #if CAIRO_HAS_PS_SURFACE
55 #ifdef CAIRO_HAS_PDF_SURFACE
56 #include <cairo-pdf.h>
70 #ifdef CAIRO_HAS_PNG_FUNCTIONS
71 static void png_get_image_size( cairo_surface_t *p_surface,
72 int &width,
int &height );
73 static void png_unpremultiply_data( png_structp png,
74 png_row_infop row_info,
76 static void write_to_png( cairo_surface_t *p_surface,
77 int width,
int height,
78 const char *filename );
81 virtual void build_plot(
void ) = 0;
112 void set_ranges(
double xmin,
double ymin,
double xmax,
double ymax );
114 #ifdef CAIRO_HAS_PNG_FUNCTIONS
119 void plot_png(
const std::string &filename );
122 #ifdef CAIRO_HAS_PS_SURFACE
127 void plot_eps(
const std::string &filename );
130 #ifdef CAIRO_HAS_PDF_SURFACE
135 void plot_pdf(
const std::string &filename );
138 #ifdef CAIRO_HAS_SVG_SURFACE
143 void plot_svg(
const std::string &filename );
void set_ranges(double xmin, double ymin, double xmax, double ymax)
Set ranges of plot in x- and y-directions.
Non-interactive plotter.
Definition: plotter.hpp:65
virtual ~Plotter()
Destructor for plotter.
void plot_eps(const std::string &filename)
Make a plot to a EPS-file.
Plotter()
Constructor for plotter.
void plot_svg(const std::string &filename)
Make a plot to a SVG-file.
Frame _frame
Definition: plotter.hpp:85
void plot_pdf(const std::string &filename)
Make a plot to a PDF-file.
void plot_png(const std::string &filename)
Make a plot to a PNG-file.
void set_font_size(size_t size)
Set font size for plot.
General purpose plotter frame for cairographics surfaces.
Definition: frame.hpp:107
void set_size(size_t width, size_t height)
Set size of plot.
Definition: plotter.hpp:101