diff options
author | eugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-10-26 20:08:46 +0000 |
---|---|---|
committer | eugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-10-26 20:08:46 +0000 |
commit | 55269011a20efef1d66d3cfe2b2182ffc408c0b6 (patch) | |
tree | d402a8a949673230756c7fb3fdf47d901c9fce5d /libass/ass_mp.c | |
parent | 63ffe0fbc65ca4f674267fecbb2a533c5c0e4713 (diff) | |
download | libass-55269011a20efef1d66d3cfe2b2182ffc408c0b6.tar.bz2 libass-55269011a20efef1d66d3cfe2b2182ffc408c0b6.tar.xz |
Split ass_configure() into several smaller functions.
FontConfig initialization moved from ass_init() to ass_set_fonts().
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@20462 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libass/ass_mp.c')
-rw-r--r-- | libass/ass_mp.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/libass/ass_mp.c b/libass/ass_mp.c index 0f32e73d..6b40c0ea 100644 --- a/libass/ass_mp.c +++ b/libass/ass_mp.c @@ -197,3 +197,31 @@ ass_track_t* ass_read_subdata(sub_data* subdata, double fps) { return track; } +char *get_path(char *); + +extern char *font_name; +#ifdef HAVE_FONTCONFIG +extern int font_fontconfig; +#else +static int font_fontconfig = 0; +#endif + +void ass_configure(ass_instance_t* priv, int w, int h) { + char *dir, *path, *family; + ass_set_frame_size(priv, w, h); + ass_set_margins(priv, ass_top_margin, ass_bottom_margin, 0, 0); + ass_set_use_margins(priv, ass_use_margins); + ass_set_font_scale(priv, ass_font_scale); + + dir = get_path("fonts"); + if (!font_fontconfig && font_name) path = strdup(font_name); + else path = get_path("subfont.ttf"); + if (font_fontconfig && font_name) family = strdup(font_name); + else family = 0; + + ass_set_fonts(priv, dir, path, family); + + free(dir); + free(path); + free(family); +} |