+ int);
+
+
+/* create a new line */
+void gfx_line(
+ image_desc_t *im,
+ double X0,
+ double Y0,
+ double X1,
+ double Y1,
+ double width,
+ gfx_color_t color);
+
+void gfx_dashed_line(
+ image_desc_t *im,
+ double X0,
+ double Y0,
+ double X1,
+ double Y1,
+ double width,
+ gfx_color_t color,
+ double dash_on,
+ double dash_off);
+
+/* create a new area */
+void gfx_new_area(
+ image_desc_t *im,
+ double X0,
+ double Y0,
+ double X1,
+ double Y1,
+ double X2,
+ double Y2,
+ gfx_color_t color);
+
+/* add a point to a line or to an area */
+void gfx_add_point(
+ image_desc_t *im,
+ double x,
+ double y);
+
+/* close current path so it ends at the same point as it started */
+void gfx_close_path(
+ image_desc_t *im);
+
+
+/* create a text node */
+void gfx_text(
+ image_desc_t *im,
+ double x,
+ double y,
+ gfx_color_t color,
+ PangoFontDescription *font_desc,
+ double tabwidth,
+ double angle,
+ enum gfx_h_align_en h_align,
+ enum gfx_v_align_en v_align,
+ const char *text);
+
+/* measure width of a text string */
+double gfx_get_text_width(
+ image_desc_t *im,
+ double start,
+ PangoFontDescription *font_desc,
+ double tabwidth,
+ char *text);
+
+
+/* convert color */
+gfx_color_t gfx_hex_to_col(
+ long unsigned int);
+
+void gfx_line_fit(
+ image_desc_t *im,
+ double *x,
+ double *y);
+
+void gfx_area_fit(
+ image_desc_t *im,
+ double *x,
+ double *y);