git.asbjorn.biz
/
swftools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't set optimize_polygons by default, it's broken
[swftools.git]
/
src
/
pdf2swf.c
diff --git
a/src/pdf2swf.c
b/src/pdf2swf.c
index
c4df439
..
1a5cc37
100644
(file)
--- a/
src/pdf2swf.c
+++ b/
src/pdf2swf.c
@@
-32,14
+32,15
@@
#include "../lib/os.h"
#include "../lib/rfxswf.h"
#include "../lib/devices/swf.h"
#include "../lib/os.h"
#include "../lib/rfxswf.h"
#include "../lib/devices/swf.h"
-#include "../lib/devices/arts.h"
+#include "../lib/devices/polyops.h"
#include "../lib/devices/record.h"
#include "../lib/pdf/pdf.h"
#include "../lib/log.h"
#define SWFDIR concatPaths(getInstallationPath(), "swfs")
#include "../lib/devices/record.h"
#include "../lib/pdf/pdf.h"
#include "../lib/log.h"
#define SWFDIR concatPaths(getInstallationPath(), "swfs")
-gfxsource_t*driver;
+static gfxsource_t*driver = 0;
+static gfxdevice_t*out = 0;
static char * outputname = 0;
static int loglevel = 3;
static char * outputname = 0;
static int loglevel = 3;
@@
-154,7
+155,7
@@
int args_callback_option(char*name,char*val) {
char*x2 = strtok(0, ":");
char*y2 = strtok(0, ":");
if(!(x1 && y1 && x2 && y2)) {
char*x2 = strtok(0, ":");
char*y2 = strtok(0, ":");
if(!(x1 && y1 && x2 && y2)) {
- fprintf(stderr, "-m option requires four arguments, <x1>:<y1>:<x2>:<y2>\n");
+ fprintf(stderr, "-c option requires four arguments, <x1>:<y1>:<x2>:<y2>\n");
exit(1);
}
custom_clip = 1;
exit(1);
}
custom_clip = 1;
@@
-188,9
+189,11
@@
int args_callback_option(char*name,char*val) {
*c = 0;
c++;
driver->set_parameter(driver, s,c);
*c = 0;
c++;
driver->set_parameter(driver, s,c);
- }
- else
+ out->setparameter(out, s,c);
+ } else {
driver->set_parameter(driver, s,"1");
driver->set_parameter(driver, s,"1");
+ out->setparameter(out, s,"1");
+ }
return 1;
}
else if (!strcmp(name, "S"))
return 1;
}
else if (!strcmp(name, "S"))
@@
-203,6
+206,14
@@
int args_callback_option(char*name,char*val) {
driver->set_parameter(driver, "ignoredraworder", "1");
return 0;
}
driver->set_parameter(driver, "ignoredraworder", "1");
return 0;
}
+#ifndef WIN32
+ else if (!strcmp(name, "Q"))
+ {
+ int seconds = atoi(val);
+ alarm(seconds);
+ return 1;
+ }
+#endif
else if (!strcmp(name, "z"))
{
driver->set_parameter(driver, "enablezlib", "1");
else if (!strcmp(name, "z"))
{
driver->set_parameter(driver, "enablezlib", "1");
@@
-258,12
+269,11
@@
int args_callback_option(char*name,char*val) {
driver->set_parameter(driver, "bitmapfonts", "1");
if(level>=3)
driver->set_parameter(driver, "ignoredraworder", "1");
driver->set_parameter(driver, "bitmapfonts", "1");
if(level>=3)
driver->set_parameter(driver, "ignoredraworder", "1");
-
- flatten = 1;
return ret;
}
else if (!strcmp(name, "G"))
{
return ret;
}
else if (!strcmp(name, "G"))
{
+ //driver->set_parameter(driver, "optimize_polygons", "1");
flatten = 1;
return 0;
}
flatten = 1;
return 0;
}
@@
-371,6
+381,7
@@
struct options_t options[] =
{"z","zlib"},
{"s","set"},
{"S","shapes"},
{"z","zlib"},
{"s","set"},
{"S","shapes"},
+ {"Q","maxtime"},
{"j","jpegquality"},
{"p","pages"},
{"w","samewindow"},
{"j","jpegquality"},
{"p","pages"},
{"w","samewindow"},
@@
-520,8
+531,18
@@
int main(int argn, char *argv[])
#endif
driver = gfxsource_pdf_create();
#endif
driver = gfxsource_pdf_create();
+ gfxdevice_t swf,wrap;
+ gfxdevice_swf_init(&swf);
+
+ gfxdevice_removeclippings_init(&wrap, &swf);
+
+ out = &wrap;
processargs(argn, argv);
processargs(argn, argv);
+ if(!flatten) {
+ out = &swf;
+ }
+
if(!filename)
{
fprintf(stderr, "Please specify an input file\n");
if(!filename)
{
fprintf(stderr, "Please specify an input file\n");
@@
-575,17
+596,6
@@
int main(int argn, char *argv[])
exit(1);
}
exit(1);
}
- gfxdevice_t swf,wrap;
- gfxdevice_swf_init(&swf);
- gfxdevice_t*out;
-
- if(flatten) {
- gfxdevice_removeclippings_init(&wrap, &swf);
- out = &wrap;
- } else {
- out = &swf;
- }
-
struct mypage_t {
int x;
int y;
struct mypage_t {
int x;
int y;