diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/test.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/test/test.c b/test/test.c index f533e7a..4884b28 100644 --- a/test/test.c +++ b/test/test.c @@ -107,7 +107,8 @@ static void init(int frame_w, int frame_h) } ass_set_frame_size(ass_renderer, frame_w, frame_h); - ass_set_fonts(ass_renderer, NULL, "Sans", 1, NULL, 1); + ass_set_fonts(ass_renderer, NULL, "sans-serif", + ASS_FONTPROVIDER_AUTODETECT, NULL, 1); } static image_t *gen_image(int width, int height) @@ -165,6 +166,28 @@ static void blend(image_t * frame, ASS_Image *img) printf("%d images blended\n", cnt); } +char *font_provider_labels[] = { + [ASS_FONTPROVIDER_NONE] = "None", + [ASS_FONTPROVIDER_AUTODETECT] = "Autodetect", + [ASS_FONTPROVIDER_CORETEXT] = "CoreText", + [ASS_FONTPROVIDER_FONTCONFIG] = "Fontconfig", + [ASS_FONTPROVIDER_DIRECTWRITE]= "DirectWrite", +}; + +static void print_font_providers(ASS_Library *ass_library) +{ + int i; + ASS_DefaultFontProvider *providers; + size_t providers_size = 0; + ass_get_available_font_providers(ass_library, &providers, &providers_size); + printf("test.c: Available font providers (%zu): ", providers_size); + for (i = 0; i < providers_size; i++) { + const char *separator = i > 0 ? ", ": ""; + printf("%s'%s'", separator, font_provider_labels[providers[i]]); + } + printf(".\n"); +} + int main(int argc, char *argv[]) { const int frame_w = 1280; @@ -178,6 +201,8 @@ int main(int argc, char *argv[]) char *subfile = argv[2]; double tm = strtod(argv[3], 0); + print_font_providers(ass_library); + init(frame_w, frame_h); ASS_Track *track = ass_read_file(ass_library, subfile, NULL); if (!track) { |