C# 字体大小报告为部分偏移值
我正在Visual Studio 2019中使用C#制作表单,并使用字体对话框设置标签的字体:C# 字体大小报告为部分偏移值,c#,windows,fonts,truetype,C#,Windows,Fonts,Truetype,我正在Visual Studio 2019中使用C#制作表单,并使用字体对话框设置标签的字体: FontDialog fontDlg = new FontDialog(); if (fontDlg.ShowDialog() != DialogResult.Cancel) { Label.Font = fontDlg.Font; Label.Text = fontDlg.Font.Name; } 我将无衬线设置为10磅。然后,我读回
FontDialog fontDlg = new FontDialog();
if (fontDlg.ShowDialog() != DialogResult.Cancel)
{
Label.Font = fontDlg.Font;
Label.Text = fontDlg.Font.Name;
}
我将无衬线设置为10磅。然后,我读回的大小与
string size = Label.Font.Size
我得到的是“9.75”而不是“10”
为什么会这样?看看这个:WinForms.NET中的FontDialog只是本机WinForms FontDialog的包装。显然,根据.Net参考源,本机FontDialog返回的是依赖于设备的值,但在.Net中,Font.Size是独立于设备的单位。尝试在Font Dialog中设置一个大小,您会看到相同的效果。@B.O.B.-我明白您的意思,但找不到它。我真希望这个链接对我有意义!你能给我指出那个链接中的一个特定部分吗?这个链接应该直接带你到UpdateFont方法。当本机FontDialog关闭时,.Net FontDialog正在调用它。它有以下注释:
//该对话框声称其工作点(一个独立于设备的单元),但实际上给了我们一些世界单位(依赖于设备)。