X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fpdf%2Fpdf2jpeg.c;h=4a3fb16324dee5a3db52bba2a025e732b4e176c8;hp=f354726346e7a4eb4a667f8a0c66906f90a71cf6;hb=4f2366641015f517c0e4f841b7ae6a9b90c7b184;hpb=421b1bd0f1f397baa682fc9e0e5cde4713595cf1 diff --git a/lib/pdf/pdf2jpeg.c b/lib/pdf/pdf2jpeg.c index f354726..4a3fb16 100644 --- a/lib/pdf/pdf2jpeg.c +++ b/lib/pdf/pdf2jpeg.c @@ -79,11 +79,9 @@ int main(int argc, char *argv[]) { GString *ownerPW, *userPW; SplashColor paperColor; SplashOutputDev *splashOut; - SplashBitmap*bitmap = 0; GBool ok; int exitCode; int pg; - double r; exitCode = 99; @@ -132,22 +130,22 @@ int main(int argc, char *argv[]) { splashOut->startDoc(doc->getXRef()); - r = resolution; - if(width) { - int old_width = doc->getPageCropWidth(page); - r = 72.0*width/old_width; - } - - doc->displayPage(splashOut, page, r, r, 0, gFalse, gTrue, gFalse); - bitmap = splashOut->getBitmap(); - if(bitmap) { - Guchar*rgb = bitmap->getDataPtr(); - int width = bitmap->getWidth(); - int height = bitmap->getHeight(); - jpeg_save(rgb, width, height, quality, output); + if(page>=1 && page<=doc->getNumPages()) { + double r = resolution; + if(width) { + int old_width = doc->getPageCropWidth(page); + r = 72.0*width/old_width; + } + doc->displayPage(splashOut, page, r, r, 0, gFalse, gTrue, gFalse); + SplashBitmap*bitmap = splashOut->getBitmap(); + if(bitmap) { + Guchar*rgb = bitmap->getDataPtr(); + int width = bitmap->getWidth(); + int height = bitmap->getHeight(); + jpeg_save(rgb, width, height, quality, output); + } } delete splashOut; - exitCode = 0;