summaryrefslogtreecommitdiffstats
path: root/src/main.cpp
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2010-03-26 04:34:25 +0000
committerTed Gould <ted@gould.cx>2010-03-26 04:34:25 +0000
commit9e023a3aa964a0d3fa1e31e46d33657367ba68aa (patch)
tree33f1392a340737e4eeefca6fd031f96c29befd2b /src/main.cpp
parentInstalling the pkgconfig file (diff)
parentAdding in shape-record.h (diff)
downloadinkscape-9e023a3aa964a0d3fa1e31e46d33657367ba68aa.tar.gz
inkscape-9e023a3aa964a0d3fa1e31e46d33657367ba68aa.zip
Merge from trunk
(bzr r8254.1.53)
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp28
1 files changed, 21 insertions, 7 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 75e882e99..d11222203 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -56,6 +56,10 @@
#include "gc-core.h"
+#ifdef AND
+#undef AND
+#endif
+
#include "macros.h"
#include "file.h"
#include "document.h"
@@ -94,14 +98,9 @@
#include <extension/input.h>
#ifdef WIN32
-//#define REPLACEARGS_ANSI
-//#define REPLACEARGS_DEBUG
-
#include "registrytool.h"
-
#include "extension/internal/win32.h"
using Inkscape::Extension::Internal::PrintWin32;
-
#endif // WIN32
#include "extension/init.h"
@@ -143,6 +142,7 @@ enum {
SP_ARG_EXPORT_PS,
SP_ARG_EXPORT_EPS,
SP_ARG_EXPORT_PDF,
+ SP_ARG_EXPORT_LATEX,
#ifdef WIN32
SP_ARG_EXPORT_EMF,
#endif //WIN32
@@ -181,6 +181,7 @@ static gchar *sp_export_dpi = NULL;
static gchar *sp_export_area = NULL;
static gboolean sp_export_area_drawing = FALSE;
static gboolean sp_export_area_page = FALSE;
+static gboolean sp_export_latex = FALSE;
static gchar *sp_export_width = NULL;
static gchar *sp_export_height = NULL;
static gchar *sp_export_id = NULL;
@@ -224,6 +225,7 @@ static void resetCommandlineGlobals() {
sp_export_area = NULL;
sp_export_area_drawing = FALSE;
sp_export_area_page = FALSE;
+ sp_export_latex = FALSE;
sp_export_width = NULL;
sp_export_height = NULL;
sp_export_id = NULL;
@@ -372,6 +374,11 @@ struct poptOption options[] = {
N_("Export document to a PDF file"),
N_("FILENAME")},
+ {"export-latex", 0,
+ POPT_ARG_NONE, &sp_export_latex, SP_ARG_EXPORT_LATEX,
+ N_("Export PDF/PS/EPS without text. Besides the PDF/PS/EPS, a LaTeX file is exported, putting the text on top of the PDF/PS/EPS file. Include the result in LaTeX like: \\input{latexfile.tex}"),
+ NULL},
+
#ifdef WIN32
{"export-emf", 'M',
POPT_ARG_STRING, &sp_export_emf, SP_ARG_EXPORT_EMF,
@@ -646,6 +653,7 @@ main(int argc, char **argv)
|| !strncmp(argv[i], "--export-eps", 12)
|| !strcmp(argv[i], "-A")
|| !strncmp(argv[i], "--export-pdf", 12)
+ || !strncmp(argv[i], "--export-latex", 14)
#ifdef WIN32
|| !strcmp(argv[i], "-M")
|| !strncmp(argv[i], "--export-emf", 12)
@@ -1203,11 +1211,11 @@ static void
do_query_all_recurse (SPObject *o)
{
SPItem *item = ((SPItem *) o);
- if (o->id && SP_IS_ITEM(item)) {
+ if (o->getId() && SP_IS_ITEM(item)) {
Geom::OptRect area = item->getBounds(sp_item_i2doc_affine(item));
if (area) {
Inkscape::SVGOStringStream os;
- os << o->id;
+ os << o->getId();
os << "," << area->min()[Geom::X];
os << "," << area->min()[Geom::Y];
os << "," << area->dimensions()[Geom::X];
@@ -1518,6 +1526,12 @@ static void do_export_ps_pdf(SPDocument* doc, gchar const* uri, char const* mime
(*i)->set_param_bool("textToPath", FALSE);
}
+ if (sp_export_latex) {
+ (*i)->set_param_bool("textToLaTeX", TRUE);
+ } else {
+ (*i)->set_param_bool("textToLaTeX", FALSE);
+ }
+
if (sp_export_ignore_filters) {
(*i)->set_param_bool("blurToBitmap", FALSE);
} else {