X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=examples%2Fsvgtiny_display_x11.c;h=c2c0aad8d20491050318a7a673ba18ee6d54c3ef;hb=54b2bc03cdbcd24399d220a47065ea553d6dd082;hp=d10bfbc9b834ebfcd52dbec0449ef882184eb889;hpb=7d0c75c39fcddcfe477f58403fd3c95d5e4f873b;p=libsvgtiny.git diff --git a/examples/svgtiny_display_x11.c b/examples/svgtiny_display_x11.c index d10bfbc..c2c0aad 100644 --- a/examples/svgtiny_display_x11.c +++ b/examples/svgtiny_display_x11.c @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include @@ -31,7 +32,7 @@ #include #include #include -#include "svgtiny.h" +#include struct svgtiny_diagram *diagram; @@ -114,8 +115,8 @@ int main(int argc, char *argv[]) case svgtiny_OUT_OF_MEMORY: fprintf(stderr, "svgtiny_OUT_OF_MEMORY"); break; - case svgtiny_LIBXML_ERROR: - fprintf(stderr, "svgtiny_LIBXML_ERROR"); + case svgtiny_LIBDOM_ERROR: + fprintf(stderr, "svgtiny_LIBDOM_ERROR"); break; case svgtiny_NOT_SVG: fprintf(stderr, "svgtiny_NOT_SVG"); @@ -125,6 +126,9 @@ int main(int argc, char *argv[]) diagram->error_line, diagram->error_message); break; + case svgtiny_LIBCSS_ERROR: + fprintf(stderr, "svgtiny_LIBCSS_ERROR"); + break; default: fprintf(stderr, "unknown svgtiny_code %i", code); break; @@ -341,7 +345,7 @@ void event_diagram_expose(const XExposeEvent *expose_event) return; } - cairo_set_source_rgb(cr, 1, 1, 1); + cairo_set_source_rgba(cr, 1, 1, 1, 1); cairo_paint(cr); for (i = 0; i != diagram->shape_count; i++) { @@ -349,10 +353,11 @@ void event_diagram_expose(const XExposeEvent *expose_event) render_path(cr, scale, &diagram->shape[i]); } else if (diagram->shape[i].text) { - cairo_set_source_rgb(cr, + cairo_set_source_rgba(cr, svgtiny_RED(diagram->shape[i].stroke) / 255.0, svgtiny_GREEN(diagram->shape[i].stroke) / 255.0, - svgtiny_BLUE(diagram->shape[i].stroke) / 255.0); + svgtiny_BLUE(diagram->shape[i].stroke) / 255.0, + diagram->shape[i].stroke_opacity); cairo_move_to(cr, scale * diagram->shape[i].text_x, scale * diagram->shape[i].text_y); @@ -416,17 +421,19 @@ void render_path(cairo_t *cr, float scale, struct svgtiny_shape *path) } } if (path->fill != svgtiny_TRANSPARENT) { - cairo_set_source_rgb(cr, + cairo_set_source_rgba(cr, svgtiny_RED(path->fill) / 255.0, svgtiny_GREEN(path->fill) / 255.0, - svgtiny_BLUE(path->fill) / 255.0); + svgtiny_BLUE(path->fill) / 255.0, + path->fill_opacity); cairo_fill_preserve(cr); } if (path->stroke != svgtiny_TRANSPARENT) { - cairo_set_source_rgb(cr, + cairo_set_source_rgba(cr, svgtiny_RED(path->stroke) / 255.0, svgtiny_GREEN(path->stroke) / 255.0, - svgtiny_BLUE(path->stroke) / 255.0); + svgtiny_BLUE(path->stroke) / 255.0, + path->stroke_opacity); cairo_set_line_width(cr, scale * path->stroke_width); cairo_stroke_preserve(cr); }