假设有一个.ttf(True Type Font)文件。您可以通过单击将其安装在Windows上。字体的真实名称不是.tff之前的文本(比如说SuperFont.ttf =>所以名称不是“SuperFont” - 它可能是,但大部分都不是)。我想阅读.tff(不知何故?)并得到字体的名称(不安装字体)。有什么想法吗?
答案 0 :(得分:22)
您需要将字体添加到私人收藏集(PrivateFontCollection
),然后请求FontFamily
个实例并获取其Name
属性。
像这样:
PrivateFontCollection fontCol = new PrivateFontCollection();
fontCol.AddFontFile(@"PATH TO FONT");
Console.WriteLine(fontCol.Families[0].Name);
您需要名称空间:
using System.Drawing;
using System.Drawing.Text;
答案 1 :(得分:3)
这是另一个不使用System.Drawing dll
提取fontname的代码foreach (FontFamily fontFamily in Fonts.GetFontFamilies("file:///D:/MyFonts/"))
{
string name = fontFamily .ToString().Split('#')[fontFamily .ToString().Split('#').Count() - 1];
}