[librsvg] add eps support to rsvg-convert
- From: Christian Persch <chpe src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg] add eps support to rsvg-convert
- Date: Fri, 11 Oct 2013 18:51:41 +0000 (UTC)
commit ca03fce6eac39a612bb7993cfa410b6b682584e9
Author: Nicholas Beeuwsaert <nick beeuwsaert gmail com>
Date: Wed Sep 4 20:53:10 2013 -0500
add eps support to rsvg-convert
Added support for exporting to Encapsulated PostScript files using rsvg-convert
Bug #707526.
rsvg-convert.c | 13 ++++++++-----
1 files changed, 8 insertions(+), 5 deletions(-)
---
diff --git a/rsvg-convert.c b/rsvg-convert.c
index a2edbdf..be86b45 100644
--- a/rsvg-convert.c
+++ b/rsvg-convert.c
@@ -165,7 +165,7 @@ main (int argc, char **argv)
{"height", 'h', 0, G_OPTION_ARG_INT, &height,
N_("height [optional; defaults to the SVG's height]"), N_("<int>")},
{"format", 'f', 0, G_OPTION_ARG_STRING, &format,
- N_("save format [optional; defaults to 'png']"), N_("[png, pdf, ps, svg, xml, recording]")},
+ N_("save format [optional; defaults to 'png']"), N_("[png, pdf, ps, eps, svg, xml, recording]")},
{"output", 'o', 0, G_OPTION_ARG_STRING, &output,
N_("output filename [optional; defaults to stdout]"), NULL},
{"keep-aspect-ratio", 'a', 0, G_OPTION_ARG_NONE, &keep_aspect_ratio,
@@ -217,8 +217,8 @@ main (int argc, char **argv)
if (n_args == 0) {
n_args = 1;
using_stdin = TRUE;
- } else if (n_args > 1 && (!format || !(!strcmp (format, "ps") || !strcmp (format, "pdf")))) {
- fprintf (stderr, _("Multiple SVG files are only allowed for PDF and PS output.\n"));
+ } else if (n_args > 1 && (!format || !(!strcmp (format, "ps") || !strcmp (format, "eps") || !strcmp
(format, "pdf")))) {
+ fprintf (stderr, _("Multiple SVG files are only allowed for PDF and (E)PS output.\n"));
exit (1);
}
@@ -293,9 +293,12 @@ main (int argc, char **argv)
dimensions.width, dimensions.height);
#endif
#ifdef CAIRO_HAS_PS_SURFACE
- else if (!strcmp (format, "ps"))
+ else if (!strcmp (format, "ps") || !strcmp (format, "eps")){
surface = cairo_ps_surface_create_for_stream (rsvg_cairo_write_func, output_file,
dimensions.width, dimensions.height);
+ if(!strcmp (format, "eps"))
+ cairo_ps_surface_set_eps(surface, TRUE);
+ }
#endif
#ifdef CAIRO_HAS_SVG_SURFACE
else if (!strcmp (format, "svg"))
@@ -348,7 +351,7 @@ main (int argc, char **argv)
#endif
else if (!strcmp (format, "xml"))
;
- else if (!strcmp (format, "svg") || !strcmp (format, "pdf") || !strcmp (format, "ps"))
+ else if (!strcmp (format, "svg") || !strcmp (format, "pdf") || !strcmp (format, "ps") || !strcmp
(format, "eps"))
cairo_show_page (cr);
else
g_assert_not_reached ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]