diff options
Diffstat (limited to 'working/test_fontconfig.cpp')
| -rw-r--r-- | working/test_fontconfig.cpp | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/working/test_fontconfig.cpp b/working/test_fontconfig.cpp new file mode 100644 index 0000000..a6a6411 --- /dev/null +++ b/working/test_fontconfig.cpp @@ -0,0 +1,35 @@ +#include <fontconfig.h> +#include <cstddef> +#include <stdio.h> +#include <stdlib.h> + +int main() { + FcBool success = FcInit (); + if ( !success ) { + return false; + } + + FcConfig *config = FcInitLoadConfigAndFonts (); + if(!config) { + return false; + } + + FcChar8 *s, *file; + + FcPattern *p = FcPatternCreate(); + FcObjectSet *os = FcObjectSetBuild (FC_FAMILY,NULL); + FcFontSet *fs = FcFontList(config, p, os); + + printf("Total fonts: %d\n", fs->nfont); + for (int i=0; fs && i < fs->nfont; i++) { + FcPattern *font = fs->fonts[i]; + + s = FcNameUnparse(font); + printf("Font: %s\n", s); + free(s); + + if (FcPatternGetString(font, FC_FILE, 0, &file) == FcResultMatch) { + printf("Filename: %s\n", file); + } + } +}
\ No newline at end of file |
