Visual Studio 2008和Windows 7以不同方式呈现文本

时间:2010-01-15 14:09:16

标签: .net visual-studio windows-7

我附上了一个屏幕截图:http://i.imgur.com/tU05T.png 我检查了我的DPI设置。他们是100%。 我似乎无法找出为什么测试在运行时应用程序与设计器中的字体大小不同。任何人都可以提供帮助。我试过谷歌搜索,还没有拿出任何有意义的链接..

4 个答案:

答案 0 :(得分:3)

Windows 7使用Segoe UI作为其默认界面字体。如果您没有在表单或控件上明确设置字体,那就是您将要获得的字体。

在以前版本的Windows中使用Microsoft Sans Serif的情况并非如此。这也是Visual Studio显示的内容。

Source

编辑:虽然该来源并没有说Windows会自动将字体设置为Segoe UI,所以我不确定它为什么会发生变化。我目前不在Windows 7机器上,所以我看不出我的机器在做什么。

答案 1 :(得分:2)

这两个镜头使用不同的字体,所以你不能指望对齐匹配。也许Windows 7会将您选择的字体替换为其他字体。您是否可以强制使用字体以确保在两种情况下都使用相同的字体?

答案 2 :(得分:2)

要避免在不同Windows版本上使用不同字体的此类问题,或者要处理用户指定使用大字体的环境,最好使用布局管理器动态调整控件的大小。

指定某种字体并不是一个好主意,因为GUI不符合平台标准,您无法确定字体是否存在(例如,Windows XP上没有Segoe UI)。此外,它不能解决大字体(或本地化版本中不同的字符串长度)等问题。

在Windows窗体中,可以使用例如以下方法完成自动调整布局。一个TableLayoutPanel。您将在MSDN上找到相关示例:

  

<强> Walkthrough: Arranging Controls on Windows Forms Using a TableLayoutPanel

答案 3 :(得分:-1)

在win7上调整vs2010字体清晰度的最佳工具是 http://www.svprogramming.net/text-sharp/index.html

真棒!不要再做了!