From f751ea1a1a60ecf0856cc38704a32bf53c898e44 Mon Sep 17 00:00:00 2001 From: kramm Date: Sun, 6 Apr 2008 16:52:14 +0000 Subject: [PATCH] drop parameters into output device as well as input device --- src/pdf2swf.c | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/src/pdf2swf.c b/src/pdf2swf.c index 975aa6c..39680cf 100644 --- a/src/pdf2swf.c +++ b/src/pdf2swf.c @@ -39,7 +39,8 @@ #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; @@ -188,9 +189,11 @@ int args_callback_option(char*name,char*val) { *c = 0; c++; driver->set_parameter(driver, s,c); - } - else + out->setparameter(out, s,c); + } else { driver->set_parameter(driver, s,"1"); + out->setparameter(out, s,"1"); + } return 1; } else if (!strcmp(name, "S")) @@ -528,8 +531,18 @@ int main(int argn, char *argv[]) #endif driver = gfxsource_pdf_create(); + gfxdevice_t swf,wrap; + gfxdevice_swf_init(&swf); + + gfxdevice_removeclippings_init(&wrap, &swf); + + out = &wrap; processargs(argn, argv); + if(!flatten) { + out = &swf; + } + if(!filename) { fprintf(stderr, "Please specify an input file\n"); @@ -583,17 +596,6 @@ int main(int argn, char *argv[]) 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; -- 1.7.10.4