From: kramm Date: Mon, 30 Oct 2006 09:52:18 +0000 (+0000) Subject: added -I option X-Git-Tag: release-0-8-0~145 X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=commitdiff_plain;h=96675f516cf632fcbf73898173bfe0b18b04ae6c added -I option --- diff --git a/src/pdf2swf.c b/src/pdf2swf.c index 48904e5..41c9fe1 100644 --- a/src/pdf2swf.c +++ b/src/pdf2swf.c @@ -55,6 +55,8 @@ static char * viewer = 0; static int xnup = 1; static int ynup = 1; +static int info_only = 0; + static int flatten = 0; char* fontpaths[256]; @@ -214,6 +216,11 @@ int args_callback_option(char*name,char*val) { driver->set_parameter("opennewwindow", "1"); return 0; } + else if (!strcmp(name, "I")) + { + info_only = 1; + return 0; + } else if (!strcmp(name, "t")) { driver->set_parameter("insertstop", "1"); @@ -343,6 +350,7 @@ struct options_t options[] = {"q","quiet"}, {"V","version"}, {"i","ignore"}, + {"I","info"}, {"z","zlib"}, {"s","set"}, {"S","shapes"}, @@ -439,6 +447,34 @@ float getRate(char*filename) return swf.frameRate / 256.0; } +void show_info(gfxsource_t*driver, char*filename) +{ + gfxdocument_t* pdf = driver->open(filename); + int pagenr; + FILE*fo=0; + if(!pdf) { + msg(" Couldn't open %s", filename); + exit(1); + } + if(outputname) { + fo = fopen(outputname, "wb"); + if(!fo) { + perror(outputname);exit(1);; + } + } else { + fo = stdout; + } + + for(pagenr = 1; pagenr <= pdf->num_pages; pagenr++) + { + gfxpage_t*page = pdf->getpage(pdf,pagenr); + if(is_in_range(pagenr, pagerange)) { + fprintf(fo, "page=%d width=%.2f height=%.2f\n", pagenr, page->width, page->height); + } + } + pdf->destroy(pdf); +} + int main(int argn, char *argv[]) { int ret; @@ -485,6 +521,11 @@ int main(int argn, char *argv[]) exit(1); } + if(info_only) { + show_info(driver, filename); + return 0; + } + if(!outputname) { if(filename) {