git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
poppler: add new axial and radialShadedFill parameters
[swftools.git]
/
lib
/
pdf
/
pdf.cc
diff --git
a/lib/pdf/pdf.cc
b/lib/pdf/pdf.cc
index
68fa711
..
f04c396
100644
(file)
--- a/
lib/pdf/pdf.cc
+++ b/
lib/pdf/pdf.cc
@@
-4,7
+4,12
@@
#include "../gfxsource.h"
#include "../devices/rescale.h"
#include "../log.h"
#include "../gfxsource.h"
#include "../devices/rescale.h"
#include "../log.h"
-#include "config.h"
+#include "../../config.h"
+#ifdef HAVE_POPPLER
+ #include <poppler-config.h>
+#else
+ #include "xpdf/config.h"
+#endif
#include "GlobalParams.h"
#include "InfoOutputDev.h"
#include "GFXOutputDev.h"
#include "GlobalParams.h"
#include "InfoOutputDev.h"
#include "GFXOutputDev.h"
@@
-186,6
+191,10
@@
void pdf_doc_destroy(gfxdocument_t*gfx)
delete i->doc; i->doc=0;
free(i->pages); i->pages = 0;
delete i->doc; i->doc=0;
free(i->pages); i->pages = 0;
+
+ if(i->pagemap) {
+ free(i->pagemap);
+ }
i->docinfo.free();
i->docinfo.free();
@@
-196,6
+205,10
@@
void pdf_doc_destroy(gfxdocument_t*gfx)
if(i->info) {
delete i->info;i->info=0;
}
if(i->info) {
delete i->info;i->info=0;
}
+ if(i->parameters) {
+ gfxparams_free(i->parameters);
+ i->parameters=0;
+ }
free(gfx->internal);gfx->internal=0;
free(gfx);gfx=0;
free(gfx->internal);gfx->internal=0;
free(gfx);gfx=0;
@@
-347,7
+360,11
@@
char* pdf_doc_getinfo(gfxdocument_t*doc, const char*name)
else if(!strcmp(name, "oktoaddnotes")) return strdup(i->doc->okToAddNotes() ? "yes" : "no");
else if(!strcmp(name, "version")) {
char buf[32];
else if(!strcmp(name, "oktoaddnotes")) return strdup(i->doc->okToAddNotes() ? "yes" : "no");
else if(!strcmp(name, "version")) {
char buf[32];
+#ifdef HAVE_POPPLER
+ sprintf(buf, "%d.%d", i->doc->getPDFMajorVersion(), i->doc->getPDFMinorVersion());
+#else
sprintf(buf, "%.1f", i->doc->getPDFVersion());
sprintf(buf, "%.1f", i->doc->getPDFVersion());
+#endif
return strdup(buf);
}
return strdup("");
return strdup(buf);
}
return strdup("");
@@
-370,7
+387,7
@@
static void pdf_setparameter(gfxsource_t*src, const char*name, const char*value)
addGlobalFontDir(value);
} else if(!strcmp(name, "addspacechars")) {
config_addspace = atoi(value);
addGlobalFontDir(value);
} else if(!strcmp(name, "addspacechars")) {
config_addspace = atoi(value);
- gfxparams_store(i->parameters, "detectspaces", 0);
+ gfxparams_store(i->parameters, "detectspaces", "0");
} else if(!strcmp(name, "detectspaces")) {
config_addspace = atoi(value);
} else if(!strcmp(name, "fontquality")) {
} else if(!strcmp(name, "detectspaces")) {
config_addspace = atoi(value);
} else if(!strcmp(name, "fontquality")) {