X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fmodules%2Fswfbits.c;h=df8c1c96fe73821730024a8eede25d2d8050ebdf;hb=714b122c75a757dcd1ef9a631aa209a298e650d7;hp=70a7729562fdfa3c20f49e891cc4c06a912a556e;hpb=aee9de2c6eb23628e54b6896f5b441d9b39317c1;p=swftools.git diff --git a/lib/modules/swfbits.c b/lib/modules/swfbits.c index 70a7729..df8c1c9 100644 --- a/lib/modules/swfbits.c +++ b/lib/modules/swfbits.c @@ -138,6 +138,26 @@ void swf_SetJPEGBits2(TAG * tag,U16 width,U16 height,RGBA* bitmap, int quality) swf_SetJPEGBitsFinish(jpeg); } +void swf_GetJPEGSize(char * fname, int*width, int*height) +{ struct jpeg_decompress_struct cinfo; + struct jpeg_error_mgr jerr; + FILE * fi; + *width = 0; + *height = 0; + cinfo.err = jpeg_std_error(&jerr); + jpeg_create_decompress(&cinfo); + if ((fi=fopen(fname,"rb"))==NULL) { + fprintf(stderr, "rfxswf: file open error\n"); + return; + } + jpeg_stdio_src(&cinfo, fi); + jpeg_read_header(&cinfo, TRUE); + *width = cinfo.image_width; + *height = cinfo.image_height; + jpeg_destroy_decompress(&cinfo); + fclose(fi); +} + int swf_SetJPEGBits(TAG * t,char * fname,int quality) { struct jpeg_decompress_struct cinfo; struct jpeg_error_mgr jerr;