2012-01-03 42 views
9

可能重复:
How do I detect if the user's font (DPI) is set to small, large, or something else?确定Windows 7通过C#设置的字体大小?

我正在寻找一种方式来恢复设置,如下面的图片中使用?

谢谢?

enter image description here

+1

http://nickstips.wordpress.com/2010/11/08/c-programmatically-get-the-current-dpi-setting/ – SLaks 2012-01-03 21:11:14

+2

另外值得注意的是,如果用户更改设置,而你的应用程序是开放的。请参阅[MSDN文章如何:在Windows窗体应用程序中响应字体方案更改](http://msdn.microsoft.com/zh-cn/library/ms229594.aspx) – 2012-01-03 21:16:46

回答

2

检查课下SystemFonts。我认为你不需要超过默认的命名空间。

string name = SystemFonts.IconTitleFont.FontFamily.Name; 
float size = SystemFonts.IconTitleFont.Size; 
+0

http://msdn.microsoft.com /en-us/library/system.drawing.systemfonts.aspx是MSDN的链接 – Bueller 2012-01-03 21:14:04

+1

OP询问的特定屏幕是DPI。 – vcsjones 2012-01-03 21:16:16

1

我相信这是已经在这里回答:

How to get Windows Display settings?

的IconTitleFont信息将只是给你的字体大小,而你似乎在寻找的放大级别。

+0

我尝试过,但与其他一些用户的结果相同。结果不可靠。 – JimDel 2012-01-03 21:37:37