X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fgfximage.c;h=c1e694edb349c8880dcd42dba109e1aeeefc67c4;hb=661e19e521cd9544e83c50df23f29c645d5d26fe;hp=3e6cfde069cd2ef648d10fe9bc4c4fa934ad2b22;hpb=8deae5c09c8cda6f48fb9b0113487567582e6376;p=swftools.git diff --git a/lib/gfximage.c b/lib/gfximage.c index 3e6cfde..c1e694e 100644 --- a/lib/gfximage.c +++ b/lib/gfximage.c @@ -7,6 +7,15 @@ #include "gfximage.h" #include "types.h" +gfximage_t*gfximage_new(int width, int height) +{ + gfximage_t*i = rfx_calloc(sizeof(gfximage_t)); + i->data = rfx_calloc(width*height*4); + i->width = width; + i->height = height; + return i; +} + void gfximage_save_jpeg(gfximage_t*img, const char*filename, int quality) { int x,y; @@ -24,7 +33,7 @@ void gfximage_save_jpeg(gfximage_t*img, const char*filename, int quality) void gfximage_save_png(gfximage_t*image, const char*filename) { - writePNG(filename, (void*)image->data, image->width, image->height); + png_write(filename, (void*)image->data, image->width, image->height); } typedef struct scale_lookup { @@ -254,9 +263,11 @@ gfximage_t* gfximage_rescale(gfximage_t*image, int newwidth, int newheight) rgba_int_t*tmpline; int monochrome = 0; gfxcolor_t monochrome_colors[2]; - - if(newwidth<1 || newheight<1) - return 0; + + if(newwidth<1) + newwidth=1; + if(newheight<1) + newheight=1; int width = image->width; int height = image->height;