10

我在一些标签(winforms)中使用了 Calibri 字体,当我运行我的程序时,这个标签以不同的字体显示。我在没有 Office 的计算机上测试时遇到过这个问题(因此没有安装 Calibri),但现在我到处都能看到它,即使在我安装了 Calibri 的计算机上也是如此(我在设计器中看到带有 Calibri 的标签;然后当我运行调试模式,我看到另一种字体)。

标签过去显示得很好,我今天才看到这个问题(但可能几天都没有注意到,我不确定,但不会太久,我敢肯定)。

昨天有一些 Windows 更新,其中一些是针对 Office 的,但我不确定它是否相关。底线是我有calibri,calibri显示在设计器中,并且在运行时显示了一些其他字体..我似乎对Segoe UI有同样的问题,但只有在使用SemiBold样式时..

这是结果的图像,左侧是运行时,右侧是 VS 设计器:

左边是运行时,右边是设计器

当我尝试使用 Calibri bold 时,这一点更加明显;这次运行时在右侧,设计器视图在左侧:

左为设计师,右为运行时

4

1 回答 1

6

每当您在 Visual Studio 中创建新的 Windows 窗体应用程序时,模板都会包含以下几行

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(/*new instance of your form*/);

这一行尤其可能会影响应用程序中文本的呈现方式。

Application.SetCompatibleTextRenderingDefault(false);
于 2012-12-06T10:31:54.790 回答