summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-05-01 14:29:28 +0000
committereugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2007-05-01 14:29:28 +0000
commit5221c54cb6531803d76bd623b827bcce26eff093 (patch)
treed687e21fbd254e01f5baeb1a206b19c2271b258e
parent48adc611d5e93f84206a1ba6d47994fec402587c (diff)
downloadmpv-5221c54cb6531803d76bd623b827bcce26eff093.tar.bz2
mpv-5221c54cb6531803d76bd623b827bcce26eff093.tar.xz
Bugfix: glyph cache depends on border width, because it contains outline_glyph
(glyph border obtained with FT_Glyph_StrokeBorder) since r23043. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@23188 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--libass/ass_cache.h1
-rw-r--r--libass/ass_render.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/libass/ass_cache.h b/libass/ass_cache.h
index 7ff75885b8..89e69f783f 100644
--- a/libass/ass_cache.h
+++ b/libass/ass_cache.h
@@ -66,6 +66,7 @@ typedef struct glyph_hash_key_s {
int bold, italic;
unsigned scale_x, scale_y; // 16.16
FT_Vector advance; // subpixel shift vector
+ unsigned outline; // border width, 16.16
} glyph_hash_key_t;
typedef struct glyph_hash_val_s {
diff --git a/libass/ass_render.c b/libass/ass_render.c
index da4d98ae9e..63acb5bafa 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -1237,6 +1237,7 @@ static void get_outline_glyph(int symbol, glyph_info_t* info, FT_Vector* advance
key.advance = *advance;
key.bold = render_context.bold;
key.italic = render_context.italic;
+ key.outline = render_context.border * 0xFFFF;
info->glyph = info->outline_glyph = 0;