diff options
Diffstat (limited to 'include/fitz/base_pixmap.h')
-rw-r--r-- | include/fitz/base_pixmap.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/include/fitz/base_pixmap.h b/include/fitz/base_pixmap.h new file mode 100644 index 00000000..9a0f2b43 --- /dev/null +++ b/include/fitz/base_pixmap.h @@ -0,0 +1,26 @@ +/* TODO: move this into draw module */ +/* +pixmaps have n components per pixel. the first is always alpha. +premultiplied alpha when rendering, but non-premultiplied for colorspace +conversions and rescaling. +*/ + +typedef struct fz_pixmap_s fz_pixmap; +typedef unsigned char fz_sample; + +struct fz_pixmap_s +{ + int x, y, w, h, n; + fz_sample *samples; +}; + +fz_error *fz_newpixmapwithrect(fz_pixmap **mapp, fz_irect bbox, int n); +fz_error *fz_newpixmap(fz_pixmap **mapp, int x, int y, int w, int h, int n); +fz_error *fz_newpixmapcopy(fz_pixmap **pixp, fz_pixmap *old); + +void fz_debugpixmap(fz_pixmap *map); +void fz_clearpixmap(fz_pixmap *map); +void fz_droppixmap(fz_pixmap *map); + +fz_error *fz_scalepixmap(fz_pixmap **dstp, fz_pixmap *src, int xdenom, int ydenom); + |