的Windows DPI设置会影响Graphics.DrawString(Windows DPI s

2019-09-17 14:19发布

我创建了一个新的位图对象,现在要不要使用GDI +绘制一些文本。 所以,我呼吁Graphics.DrawString(...)。

问题是,字符串的大小取决于Windows 7的DPI设置。 有没有什么办法让我的文字图画独立的窗口设置?

PS:在DPI设置似乎只影响文本。 改变DPI当A例如矩形stys相同的大小...

Answer 1:

只要找到了解决自己:关键是要创建一个参数GraphicsUnit.Pixel的字体。 这样,绘制字符串获得独立于系统的DPI设置。



Answer 2:

你是在该DPI影响在设备无关的单位测量只绘制项正确。 字体在积分来测量,其中1点= 1/72英寸。 因此一个10PT字体将在英寸相同的尺寸上的每一个屏幕分辨率和将占用取决于屏幕分辨率和像素密度或多或少像素。

以像素为单位的一切(诸如线条,形状等)不会受到DPI影响,但实际的物理尺寸将根据屏幕分辨率和像素密度而变化。 改变你的代码来衡量像素的字体确实将确保文本是所有屏幕的DPI设置相同的像素大小,但如果你要打印到打印机,你会发现,文字大小将取决于打印机的分辨率不同而不同。



文章来源: Windows DPI setting affects Graphics.DrawString