在C# Winform中,我遇到了以下问题:“仅支持TrueType字体。这不是一个TrueType字体”。

29
我有一个C# winform应用程序,我安装了几个ttf字体,但是当我尝试将文本框的字体设置为我下载的其中任意一个时,出现错误。虽然我非常确定已经安装了ttf字体,但为什么会出现这种情况呢?如何解决?

你确定是设置字体的行为,还是存在其他非TTF字体的事实?只是问一下,因为我看到了这个问题。 - Jonathon Reinhart
是的,我确定这与设置字体有关。 - vexe
你正在与一台机器争论。你会输掉这场争论。除非你使用信用卡并可以取消订单,否则不要下载字体。而且要避免使用OpenType字体,因为它们不受Winforms支持。 - Hans Passant
5个回答

58

在 Visual Studio 运行时安装新字体会导致此问题。关闭 Visual Studio,然后重新打开即可解决问题。


5
虽然标记的答案提供了一个链接解决方案,但是这个答案清晰详细地阐述了解决方案。 - sonyisda1

2
下载字体后,我只需双击它并点击“安装”即可。然而,这并没有起作用,在Win 10的“字体设置”中没有显示该字体,除此之外,它在“/Windows/Fonts/”文件夹中。 有些程序可以找到该字体(如Gimp),而其他程序,如VS或甚至Win10本身,却找不到它们。重启后,字体再次未显示(直到新的双击/安装)。
解决方案:右键单击字体,选择“为所有用户安装”。

2

我有一种字体,名为“Source Sans Pro”,带有许可证。这种字体已经安装并且可以在所有 MS-Application 中使用。

对于 VS Forms-Project,我需要执行以下操作来“重新安装”它:

右键单击该字体,选择“为所有用户安装”

重启 VS 后,误导性的错误消息消失了。


0

0

尝试

private void Form1_Load(object sender, System.EventArgs e) {
    label1.Font = new Font("myFont", 12, FontStyle.Regular);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接