diff options
author | Robin Watts <robin.watts@artifex.com> | 2012-11-21 15:59:56 +0000 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2012-11-21 17:31:02 +0000 |
commit | 678904ef2e6fb9c449b8bdaeba5802643592d4a4 (patch) | |
tree | c5c5b97fc6a9a62d25a1ce8331feb76683522990 /fitz/fitz-internal.h | |
parent | 06fd5ad8a48b0339bb00ef531d84733fb05f19c6 (diff) | |
download | mupdf-678904ef2e6fb9c449b8bdaeba5802643592d4a4.tar.xz |
Add weights caches for pixmap scaling.
This means that repeated scaling of the same pixmap (or scales of
'stacked' pixmaps) will do less needless recalculation.
Diffstat (limited to 'fitz/fitz-internal.h')
-rw-r--r-- | fitz/fitz-internal.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/fitz/fitz-internal.h b/fitz/fitz-internal.h index d7bbb5cb..914bed68 100644 --- a/fitz/fitz-internal.h +++ b/fitz/fitz-internal.h @@ -860,6 +860,13 @@ fz_pixmap *fz_alpha_from_gray(fz_context *ctx, fz_pixmap *gray, int luminosity); unsigned int fz_pixmap_size(fz_context *ctx, fz_pixmap *pix); fz_pixmap *fz_scale_pixmap(fz_context *ctx, fz_pixmap *src, float x, float y, float w, float h, fz_bbox *clip); + +typedef struct fz_scale_cache_s fz_scale_cache; + +fz_scale_cache *fz_new_scale_cache(fz_context *ctx); +void fz_free_scale_cache(fz_context *ctx, fz_scale_cache *cache); +fz_pixmap *fz_scale_pixmap_cached(fz_context *ctx, fz_pixmap *src, float x, float y, float w, float h, fz_bbox *clip, fz_scale_cache *cache_x, fz_scale_cache *cache_y); + void fz_subsample_pixmap(fz_context *ctx, fz_pixmap *tile, int factor); fz_bbox fz_pixmap_bbox_no_ctx(fz_pixmap *src); |