+ cairo_destroy (cr);
+
+ return surface;
+}
+
+char *
+xr_write_png_image (cairo_surface_t *surface,
+ const char *file_name_template, int number)
+{
+ const char *number_pos = strchr (file_name_template, '#');
+ char *file_name;
+ if (number_pos != NULL)
+ file_name = xasprintf ("%.*s%d%s.png",
+ (int) (number_pos - file_name_template),
+ file_name_template, number, number_pos + 1);
+ else
+ file_name = xasprintf ("%s.png", file_name_template);
+
+ cairo_status_t status = cairo_surface_write_to_png (surface, file_name);