| Goffice Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
GdkPixbuf;
enum GtkAnchorType;
#define GOG_RENDERER_CAIRO_WITH_SVG
#define GOG_RENDERER_CAIRO_WITH_PDF
#define GOG_RENDERER_CAIRO_WITH_PS
#define GOG_RENDERER_HAIRLINE_WIDTH_PTS
#define GOG_RENDERER_GRIP_SIZE
#define GOG_RENDERER_TYPE
#define GOG_RENDERER (o)
#define IS_GOG_RENDERER (o)
#define GOG_RENDERER_GET_CLASS (o)
GType gog_renderer_get_type (void);
double gog_renderer_line_size (GogRenderer const *r,
double width);
double gog_renderer_pt2r_x (GogRenderer const *r,
double d);
double gog_renderer_pt2r_y (GogRenderer const *r,
double d);
double gog_renderer_pt2r (GogRenderer const *r,
double d);
double gog_renderer_get_hairline_width_pts (GogRenderer const *rend);
void gog_renderer_stroke_serie (GogRenderer *renderer,
GOPath const *path);
void gog_renderer_fill_serie (GogRenderer *renderer,
GOPath const *path,
GOPath const *close_path);
void gog_renderer_draw_shape (GogRenderer *renderer,
GOPath const *path);
void gog_renderer_stroke_shape (GogRenderer *renderer,
GOPath const *path);
void gog_renderer_fill_shape (GogRenderer *renderer,
GOPath const *path);
void gog_renderer_draw_circle (GogRenderer *rend,
double x,
double y,
double r);
void gog_renderer_stroke_circle (GogRenderer *rend,
double x,
double y,
double r);
void gog_renderer_fill_circle (GogRenderer *rend,
double x,
double y,
double r);
void gog_renderer_draw_rectangle (GogRenderer *rend,
GogViewAllocation const *rect);
void gog_renderer_stroke_rectangle (GogRenderer *rend,
GogViewAllocation const *rect);
void gog_renderer_fill_rectangle (GogRenderer *rend,
GogViewAllocation const *rect);
void gog_renderer_draw_grip (GogRenderer *renderer,
double x,
double y);
void gog_renderer_draw_selection_rectangle
(GogRenderer *renderer,
GogViewAllocation const *rectangle);
#define gog_renderer_in_grip (x,y,grip_x,grip_y)
void gog_renderer_draw_marker (GogRenderer *rend,
double x,
double y);
void gog_renderer_draw_text (GogRenderer *rend,
char const *text,
GogViewAllocation const *pos,
GtkAnchorType anchor,
gboolean use_markup);
void gog_renderer_get_text_OBR (GogRenderer *rend,
char const *text,
gboolean use_markup,
GOGeometryOBR *obr);
void gog_renderer_get_text_AABR (GogRenderer *rend,
char const *text,
gboolean use_markup,
GOGeometryAABR *aabr);
void gog_renderer_push_style (GogRenderer *rend,
GogStyle const *style);
void gog_renderer_pop_style (GogRenderer *rend);
void gog_renderer_push_clip (GogRenderer *rend,
GOPath const *path);
void gog_renderer_push_clip_rectangle (GogRenderer *rend,
double x,
double y,
double w,
double h);
void gog_renderer_pop_clip (GogRenderer *rend);
gboolean gog_renderer_update (GogRenderer *renderer,
double w,
double h);
cairo_surface_t * gog_renderer_get_cairo_surface (GogRenderer *renderer);
GdkPixbuf * gog_renderer_get_pixbuf (GogRenderer *renderer);
void gog_renderer_request_update (GogRenderer *renderer);
gboolean gog_renderer_render_to_cairo (GogRenderer *renderer,
cairo_t *cairo,
double width,
double height);
gboolean gog_renderer_export_image (GogRenderer *renderer,
GOImageFormat format,
GsfOutput *output,
double x_dpi,
double y_dpi);
GogRenderer * gog_renderer_new (GogGraph *graph);
typedef enum
{
GTK_ANCHOR_CENTER,
GTK_ANCHOR_NORTH,
GTK_ANCHOR_NORTH_WEST,
GTK_ANCHOR_NORTH_EAST,
GTK_ANCHOR_SOUTH,
GTK_ANCHOR_SOUTH_WEST,
GTK_ANCHOR_SOUTH_EAST,
GTK_ANCHOR_WEST,
GTK_ANCHOR_EAST,
GTK_ANCHOR_N = GTK_ANCHOR_NORTH,
GTK_ANCHOR_NW = GTK_ANCHOR_NORTH_WEST,
GTK_ANCHOR_NE = GTK_ANCHOR_NORTH_EAST,
GTK_ANCHOR_S = GTK_ANCHOR_SOUTH,
GTK_ANCHOR_SW = GTK_ANCHOR_SOUTH_WEST,
GTK_ANCHOR_SE = GTK_ANCHOR_SOUTH_EAST,
GTK_ANCHOR_W = GTK_ANCHOR_WEST,
GTK_ANCHOR_E = GTK_ANCHOR_EAST
} GtkAnchorType;
#define GOG_RENDERER(o) (G_TYPE_CHECK_INSTANCE_CAST((o), GOG_RENDERER_TYPE, GogRenderer))
|
#define IS_GOG_RENDERER(o) (G_TYPE_CHECK_INSTANCE_TYPE((o), GOG_RENDERER_TYPE))
|
#define GOG_RENDERER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS((o), GOG_RENDERER_TYPE, GogRendererClass))
|
double gog_renderer_line_size (GogRenderer const *r, double width);
|
|
|
|
Returns : |
double gog_renderer_pt2r_x (GogRenderer const *r, double d);
|
|
|
|
Returns : |
double gog_renderer_pt2r_y (GogRenderer const *r, double d);
|
|
|
|
Returns : |
double gog_renderer_get_hairline_width_pts (GogRenderer const *rend);
|
a GogRenderer |
Returns : |
the hairline width in pts. |
void gog_renderer_stroke_serie (GogRenderer *renderer, GOPath const *path);
|
|
|
void gog_renderer_fill_serie (GogRenderer *renderer, GOPath const *path, GOPath const *close_path);
|
|
|
|
|
void gog_renderer_draw_shape (GogRenderer *renderer, GOPath const *path);
|
|
|
void gog_renderer_stroke_shape (GogRenderer *renderer, GOPath const *path);
|
|
|
void gog_renderer_fill_shape (GogRenderer *renderer, GOPath const *path);
|
|
|
void gog_renderer_draw_circle (GogRenderer *rend, double x, double y, double r);
|
|
|
|
|
|
|
void gog_renderer_stroke_circle (GogRenderer *rend, double x, double y, double r);
|
|
|
|
|
|
|
void gog_renderer_fill_circle (GogRenderer *rend, double x, double y, double r);
|
|
|
|
|
|
|
void gog_renderer_draw_rectangle (GogRenderer *rend, GogViewAllocation const *rect);
A utility routine to build a closed rectangle vpath.
|
a GogRenderer |
|
position and extent of rectangle |
void gog_renderer_stroke_rectangle (GogRenderer *rend, GogViewAllocation const *rect);
|
|
|
void gog_renderer_fill_rectangle (GogRenderer *rend, GogViewAllocation const *rect);
|
|
|
void gog_renderer_draw_grip (GogRenderer *renderer, double x, double y);
Draw a grip, used for moving/resizing of objects.
|
GogRenderer |
|
x position of grip |
|
y position of grip |
void gog_renderer_draw_selection_rectangle
(GogRenderer *renderer,
GogViewAllocation const *rectangle);
|
|
|
void gog_renderer_draw_marker (GogRenderer *rend, double x, double y);
|
GogRenderer |
|
X-coordinate |
|
Y-coordinate |
void gog_renderer_draw_text (GogRenderer *rend, char const *text, GogViewAllocation const *pos, GtkAnchorType anchor, gboolean use_markup);
Have rend draw text in the at pos.{x,y} anchored by the anchor corner.
If pos.w or pos.h are >= 0 then clip the results to less than that size.
|
GogRenderer |
|
the string to draw |
|
GogViewAllocation |
|
GtkAnchorType how to draw relative to pos
|
|
wether to use pango markup |
void gog_renderer_get_text_OBR (GogRenderer *rend, char const *text, gboolean use_markup, GOGeometryOBR *obr);
|
GogRenderer |
|
the string to draw |
|
wether to use pango markup |
|
GOGeometryOBR to store the Object Bounding Rectangle of text.
|
void gog_renderer_get_text_AABR (GogRenderer *rend, char const *text, gboolean use_markup, GOGeometryAABR *aabr);
|
GogRenderer |
|
the string to draw |
|
wether to use pango markup |
|
GOGeometryAABR to store the Axis Aligned Bounding Rectangle of text.
|
void gog_renderer_push_style (GogRenderer *rend, GogStyle const *style);
|
|
|
void gog_renderer_push_clip (GogRenderer *rend, GOPath const *path);
Defines the current clipping region.
|
GogRenderer |
|
a GOPath |
void gog_renderer_push_clip_rectangle (GogRenderer *rend, double x, double y, double w, double h);
Defines a rectangular clipping region. For efficient screen rendering, this function takes care to round the coordinates.
|
GogRenderer |
|
left coordinate |
|
top coordinate |
|
width of clipping rectangle |
|
height of clipping rectangle |
void gog_renderer_pop_clip (GogRenderer *rend);
End the current clipping.
|
GogRenderer |
gboolean gog_renderer_update (GogRenderer *renderer, double w, double h);
Requests a renderer update, only useful for pixbuf based renderer.
|
a GogRenderer |
|
requested width |
|
requested height |
Returns : |
TRUE if a redraw is necessary.
|
cairo_surface_t * gog_renderer_get_cairo_surface (GogRenderer *renderer);
|
|
Returns : |
GdkPixbuf * gog_renderer_get_pixbuf (GogRenderer *renderer);
|
GogRenderer |
Returns : |
current pixbuf buffer from a renderer that can render into a pixbuf.
or NULL on error.
|
gboolean gog_renderer_render_to_cairo (GogRenderer *renderer, cairo_t *cairo, double width, double height);
|
|
|
|
|
|
|
|
Returns : |
gboolean gog_renderer_export_image (GogRenderer *renderer, GOImageFormat format, GsfOutput *output, double x_dpi, double y_dpi);
Exports an image of graph in given format, writing results in a GsfOutput stream.
If export format type is a bitmap one, it computes image size with x_dpi, y_dpi and
graph size (see gog_graph_get_size()).
|
a GogRenderer |
|
image format for export |
|
a GsfOutput stream |
|
x resolution of exported graph |
|
y resolution of exported graph |
Returns : |
TRUE if export succeed.
|
GogRenderer * gog_renderer_new (GogGraph *graph);
|
graph model |
Returns : |
a new GogRenderer which can render into a pixbuf, and sets graph
as its model.
|