C# - 读取和预览字体(C# - Read & Preview Font)

2019-06-26 21:09发布

我可以阅读和在C#中预览字体(TTF为主和OTF)? 可以/我应该使用什么其他语言?

读:

  • 如字体家庭信息,字体名称

预习:

  • 使用字体显示一些文本
  • 任何方式显示所有支持的字体字符?

Answer 1:

注意 :如果你想预览OTF字体不使用System.Drawing中/ System.Windows.Forms的。 除非他们是TTF的变相,你会不会让他们展现。 System.Drawing中,基于GDI +,只支持TTF字体!

但是,如果你可以使用.NET 3.0中,你可以使用

Fonts.GetFontFamilies(location)

System.Windows.Media命名空间(只是参考PresentationCore.dll中)。

的FontFamily,你可以得到个人字样 S(.ttc文件包含不止一个“字体”,而是一个的FontFamily也结合了各种权重和变体)。 而从字体 ,可以打电话TryGetGlyphTypeface得到GlyphTypeface,其中有一个CharacterToGlyphMap属性,它会告诉你哪些Unicode代码点物理支持。

它似乎也可以直接使用GlyphTypeface,但我看不出有什么办法,你可以处理.ttc文件。 但是,如果这是不相关的,只是创建每个文件GlyphTypeface。

我会劝告反对,虽然尝试所有Unicode代码点顺序。



Answer 2:

要预览字体可以渲染出来,以这样一种形式:

public partial class MyForm: Form
{
   .
   .
   .
   public void ShowMyFont()
   {
      Graphics graphics = this.CreateGraphics();
      graphics.DrawString("Hello world!", new Font("Arial", 12), Brushes.Black, 0, 0);
   }
}


文章来源: C# - Read & Preview Font
标签: c# fonts