我想要获取有关字体(ttf 或 otf)的信息,例如字体名称和样式。
如果可能的话,我不想安装额外的软件,比如otfinfo
。由于fontconfig
到处都安装了,一个不错的选择似乎是
fc-scan --format "%{family} %{style}\n" font.ttf
然而,输出是
Bookman Old Style Cursiva,kurzíva,kursiv,Πλάγια,Italic,Kursivoitu,Italique,Dőlt,Corsivo,Cursief,Kursywa,Itálico,Курсив,İtalik,Poševno,Etzana
样式包含字体支持的所有不同语言。我如何将输出限制为fc-scan
系统语言或英语?
期望的输出将是Bookman Old Style Italic
上述的情况。
答案1
要获取系统语言的字体信息,请使用
fc-scan --format "%{fullname[$(( $(sed -E 's/^(.*)en.*/\1/;s/[^,]//g' <<<"$(fc-scan --format "%{fullnamelang}\n" /mnt/Fonts/bookosb.ttf)" | wc -c) -1 ))]}\n" /mnt/Fonts/bookosb.ttf