Mercurial > mplayer.hg
changeset 19825:f351a3fc3e42
Make font outline width proportional to movie resolution.
author | eugeni |
---|---|
date | Wed, 13 Sep 2006 15:35:10 +0000 |
parents | 2e2480fb43bf |
children | 2b012c529c57 |
files | libass/ass_render.c |
diffstat | 1 files changed, 6 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/libass/ass_render.c Wed Sep 13 15:08:16 2006 +0000 +++ b/libass/ass_render.c Wed Sep 13 15:35:10 2006 +0000 @@ -135,6 +135,7 @@ int orig_width; // frame width ( = screen width - margins ) ass_track_t* track; long long time; // frame's timestamp, ms + double font_scale; double font_scale_x; // x scale applied to all glyphs to preserve text aspect ratio } frame_context_t; @@ -521,9 +522,7 @@ static void change_font_size(int sz) { - double size = (double)sz * global_settings->font_size_coeff * ass_internal_font_size_coeff; - size *= frame_context.orig_height; - size /= frame_context.track->PlayResY; + double size = sz * frame_context.font_scale; if (size < 1) size = 1; @@ -579,7 +578,7 @@ } else { render_context.border = border; FT_Stroker_Set( render_context.stroker, - (int)(64 * border), + (int)(64 * border * frame_context.font_scale), FT_STROKER_LINECAP_ROUND, FT_STROKER_LINEJOIN_ROUND, 0 ); @@ -1878,6 +1877,9 @@ ass_lazy_track_init(); + frame_context.font_scale = global_settings->font_size_coeff * ass_internal_font_size_coeff * + frame_context.orig_height / frame_context.track->PlayResY; + if (frame_context.width * track->PlayResY == frame_context.height * track->PlayResX) frame_context.font_scale_x = 1.; else