changeset 25392:2865633412d9

make libass use sub_font_name whenever it's possible
author ben
date Sun, 16 Dec 2007 11:13:24 +0000
parents 6ee4073104bc
children 454ab8a40f1c
files libass/ass_mp.c
diffstat 1 files changed, 6 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/libass/ass_mp.c	Sun Dec 16 09:59:20 2007 +0000
+++ b/libass/ass_mp.c	Sun Dec 16 11:13:24 2007 +0000
@@ -59,6 +59,7 @@
 static int font_fontconfig = -1;
 #endif
 extern char* font_name;
+extern char* sub_font_name;
 extern float text_font_scale_factor;
 extern int subtitle_autoscale;
 
@@ -90,7 +91,7 @@
 		sid = ass_alloc_style(track);
 		style = track->styles + sid;
 		style->Name = strdup("Default");
-		style->FontName = (font_fontconfig >= 0 && font_name) ? strdup(font_name) : strdup("Sans");
+		style->FontName = (font_fontconfig >= 0 && sub_font_name) ? strdup(sub_font_name) : (font_fontconfig >= 0 && font_name) ? strdup(font_name) : strdup("Sans");
 
 		fs = track->PlayResY * text_font_scale_factor / 100.;
 		// approximate autoscale coefficients
@@ -234,9 +235,11 @@
 void ass_configure_fonts(ass_renderer_t* priv) {
 	char *dir, *path, *family;
 	dir = get_path("fonts");
-	if (font_fontconfig < 0 && font_name) path = strdup(font_name);
+	if (font_fontconfig < 0 && sub_font_name) path = strdup(sub_font_name);
+	else if (font_fontconfig < 0 && font_name) path = strdup(font_name);
 	else path = get_path("subfont.ttf");
-	if (font_fontconfig >= 0 && font_name) family = strdup(font_name);
+	if (font_fontconfig >= 0 && sub_font_name) family = strdup(sub_font_name);
+	else if (font_fontconfig >= 0 && font_name) family = strdup(font_name);
 	else family = 0;
 
 	ass_set_fonts(priv, path, family);