diff options
author | greg <greg@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-03-05 20:47:33 +0000 |
---|---|---|
committer | greg <greg@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-03-05 20:47:33 +0000 |
commit | 34e8e99865ae9227ca9d522fa394112ba1dfd5ef (patch) | |
tree | 27957824b50e76370343826f5b03df4186361ec7 /libass/ass_cache.h | |
parent | 7d67dae86d99a26cc221a1c04e4d07aefa7ba02e (diff) | |
download | libass-34e8e99865ae9227ca9d522fa394112ba1dfd5ef.tar.bz2 libass-34e8e99865ae9227ca9d522fa394112ba1dfd5ef.tar.xz |
Combine adjacent overlapping, translucent glyph borders and shadows to
avoid luminance build-up, which looks ugly.
The resulting, modified bitmaps are stored in separate bitmap cache.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28824 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libass/ass_cache.h')
-rw-r--r-- | libass/ass_cache.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/libass/ass_cache.h b/libass/ass_cache.h index fdb8a64..f7042be 100644 --- a/libass/ass_cache.h +++ b/libass/ass_cache.h @@ -65,6 +65,27 @@ bitmap_hash_val_t* cache_find_bitmap(bitmap_hash_key_t* key); void ass_bitmap_cache_reset(void); void ass_bitmap_cache_done(void); + +// Cache for composited bitmaps +typedef struct composite_hash_key_s { + int aw, ah, bw, bh; + int ax, ay, bx, by; + bitmap_hash_key_t a; + bitmap_hash_key_t b; +} composite_hash_key_t; + +typedef struct composite_hash_val_s { + unsigned char* a; + unsigned char* b; +} composite_hash_val_t; + +void ass_composite_cache_init(void); +void* cache_add_composite(composite_hash_key_t* key, composite_hash_val_t* val); +composite_hash_val_t* cache_find_composite(composite_hash_key_t* key); +void ass_composite_cache_reset(void); +void ass_composite_cache_done(void); + + // describes an outline glyph typedef struct glyph_hash_key_s { ass_font_t* font; |