如何使用 wxPython 获取屏幕 DPI?

发布于 2024-09-07 23:28:25 字数 87 浏览 4 评论 0原文

我可以获取屏幕分辨率,

wx.DisplaySize()

但我没有看到提供 DPI 的方法。

I can get the screen resolution in with

wx.DisplaySize()

but I don't see a method which gives me the DPI.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

嘴硬脾气大 2024-09-14 23:28:25

一个更简单的解决方案可能是:

import wx
app = wx.App(0)
print wx.ScreenDC().GetPPI()

我在 Windows XP 上测试了它,它确实使用默认 DPI 设置打印 (96, 96),使用 120 DPI 设置打印 (120, 120)。

An easier solution may be:

import wx
app = wx.App(0)
print wx.ScreenDC().GetPPI()

I tested it on Windows XP and it indeed prints (96, 96) with the default DPI-setting and (120, 120) with 120 DPI-setting.

内心旳酸楚 2024-09-14 23:28:25

我不认为 wxPython 中有任何这样的函数,你可以做的是,通过使用 ctypes 调用 win32api 函数 GetDeviceCaps 并获取 LOGPIXELSX/LOGPIXELSY

I don't think there is any such function in wxPython, what you can do instead is, by using ctypes call win32api function GetDeviceCaps and get LOGPIXELSX/LOGPIXELSY

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文