X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fpdf2swf.c;h=c4df439e9fa7e168c61addc837f82907200d8556;hb=4775c54ba8d1febd267b24f34d8255764cf51367;hp=04c860f7b4204374479ae0bdf075c014771e0aee;hpb=7d65cab745499277588a5ab47c336d218c7a7a31;p=swftools.git diff --git a/src/pdf2swf.c b/src/pdf2swf.c index 04c860f..c4df439 100644 --- a/src/pdf2swf.c +++ b/src/pdf2swf.c @@ -244,6 +244,24 @@ int args_callback_option(char*name,char*val) { driver->set_parameter(driver, "linksopennewwindow", "0"); return 0; } + else if (!strcmp(name, "O")) + { + int level = 1; + int ret=0; + if(val&& val[0] && val[1]==0 && isdigit(val[0])) { + level = atoi(val); + ret=1; + } + if(level>=1) + driver->set_parameter(driver, "poly2bitmap", "1"); + if(level>=2) + driver->set_parameter(driver, "bitmapfonts", "1"); + if(level>=3) + driver->set_parameter(driver, "ignoredraworder", "1"); + + flatten = 1; + return ret; + } else if (!strcmp(name, "G")) { flatten = 1; @@ -671,6 +689,7 @@ int main(int argn, char *argv[]) result->destroy(result); pdf->destroy(pdf); + driver->destroy(driver); const char*zip = ""; if(zlib) { @@ -690,13 +709,20 @@ int main(int argn, char *argv[]) printf("\n"); } if(preloader && viewer) { - systemf("swfcombine \"%s\" viewport=%s -o __tmp__.swf", - viewer, outputname); - systemf("swfcombine %s -X %d -Y %d -r %f %s/PreLoaderTemplate.swf loader=%s movie=__tmp__.swf -o \"%s\"",zip,width,height, - getRate(preloader), SWFDIR, preloader, outputname); - systemf("rm __tmp__.swf"); +#ifdef HAVE_MKSTEMP + char tmpname[] = "__swf__XXXXXX"; + mkstemp(tmpname); +#else + char*tmpname = "__tmp__.swf"; +#endif + systemf("swfcombine \"%s\" viewport=%s -o %s", + viewer, outputname, tmpname); + systemf("swfcombine %s -X %d -Y %d -r %f %s/PreLoaderTemplate.swf loader=%s movie=%s -o \"%s\"",zip,width,height, + getRate(preloader), SWFDIR, preloader, tmpname, outputname); + systemf("rm %s", tmpname); } + return 0; }