【问题标题】:Can't load font using font file name无法使用字体文件名加载字体
【发布时间】:2011-04-10 18:23:45
【问题描述】:

Windows 文件夹中有字体文件(字体名称为 Lucida Sans)。我尝试使用以下代码加载该字体,但无法创建 字体对象

        PrivateFontCollection c = new PrivateFontCollection();
        c.AddFontFile("c:\\windows\\LSANSDI.TTF");
        FontFamily fa = c.Families[0]; //This line succeeds
        Font fn = new Font(fa, 10);  //I get Exception here and it says that it does not support Regular style

即使您使用 fa.IsStyleAvailable 函数检查所有样式,我也没有可用的样式。创建这样的无法加载的ttf文件有什么用。我怎样才能使用那种字体?但是当我在 MS Word 中使用时,我可以看到字体具有所有可用的样式 谁能提供解决方案?

【问题讨论】:

  • 您是否尝试将字体安装到 windows\fonts 并从那里读取?
  • 我不想将它安装在 Windows 文件夹中。我需要暂时使用它,然后丢弃它
  • 关于下面你删除的 cmets,如果你可以在 C# 中使用 WPF 库,你可以获得字体名称和面部名称。您需要对System.Windows.Media 的引用。但如果这就是你所追求的,你可能应该改变问题以反映这一点。

标签: c# fonts


【解决方案1】:

我的猜测是字体是粗体和斜体,这意味着您需要检查 (FontStyle.Bold | FontStyle.Italic) 是否可用,并相应地创建新字体。

【讨论】:

    猜你喜欢
    • 2017-06-02
    • 2016-08-03
    • 2015-09-19
    • 1970-01-01
    • 1970-01-01
    • 2016-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多