Portál AbcLinuxu, 29. prosince 2025 20:25
ttftool z balíku abiword (převod na afm + grep + sed apod.), bohužel takto jsem získal jen názvu řezů, nikoliv rodin, a výsledek si tak žádal značných ručních úprav.
Přeci musí existovat něco přímočarého, když k tomuto seznamu má přístup de facto každý dialog nastavující písmo v aplikaci …
#include <stdlib.h>
#include <ft2build.h>
#include FT_FREETYPE_H
void show_font_info(FT_Library library, char *dir, char *fontname)
{
FT_Error error;
FT_Face face;
error = FT_New_Face(library, fontname, 0, &face);
if (error == FT_Err_Unknown_File_Format) {
fprintf(stderr, "Unknown file format \"%s\"\n",
fontname);
return;
} else if (error) {
fprintf(stderr, "Unable to read font \"%s\"\n",
fontname);
return;
}
fprintf(stdout, "FileName: '%s'\n"
"FamilyName: '%s'\n"
"StyleName: '%s'\n\n",
fontname,
face->family_name,
face->style_name);
FT_Done_Face(face);
}
int main(int argc, char *argv[])
{
int i;
char *dir;
FT_Library library;
FT_Error error;
if (argc < 2) return EXIT_FAILURE;
dir = argv[1];
error = FT_Init_FreeType(&library);
if (error) {
fprintf(stderr, "Unable to init FreeType\n");
return EXIT_FAILURE;;
}
for (i = 1; i < argc; i++) {
show_font_info(library, dir, argv[i]);
}
FT_Done_FreeType(library);
return EXIT_SUCCESS;
}
… nič sa mi nedarilo nájsť, tak som si naprogramoval jednoduchý program …Ano, tak se pozná geek
Díky za zajímavé řešení.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.