X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fgfxdevice.h;h=c73117db90f9a6f4cbf839cf50b10cd922612cfb;hp=181d0b9b93c9ad44240759d460b667b8bd8d3727;hb=5a4a20931aade60f0e99df0819fbd1c007a705da;hpb=2ddfa640af28b592ecf4295f0b1b7b43c923f707 diff --git a/lib/gfxdevice.h b/lib/gfxdevice.h index 181d0b9..c73117d 100644 --- a/lib/gfxdevice.h +++ b/lib/gfxdevice.h @@ -69,8 +69,8 @@ typedef struct _gfximage /* if the data contains an alpha layer (a != 255), the r,g,b values will have to be premultiplied */ gfxcolor_t*data; - int width; - int height; + unsigned width; + unsigned height; } gfximage_t; /* gradients: A radial gradient will start at 0,0 and have a radius of 1,0 @@ -119,7 +119,10 @@ typedef struct _gfxdevice void (*endclip)(struct _gfxdevice*dev); void (*stroke)(struct _gfxdevice*dev, gfxline_t*line, gfxcoord_t width, gfxcolor_t*color, gfx_capType cap_style, gfx_joinType joint_style, gfxcoord_t miterLimit); void (*fill)(struct _gfxdevice*dev, gfxline_t*line, gfxcolor_t*color); + + /* expects alpha channel in image to be non-premultiplied */ void (*fillbitmap)(struct _gfxdevice*dev, gfxline_t*line, gfximage_t*img, gfxmatrix_t*imgcoord2devcoord, gfxcxform_t*cxform); //cxform? tiling? + void (*fillgradient)(struct _gfxdevice*dev, gfxline_t*line, gfxgradient_t*gradient, gfxgradienttype_t type, gfxmatrix_t*gradcoord2devcoord); //? void (*addfont)(struct _gfxdevice*dev, gfxfont_t*font);