python获取当前pc的分辨率(windows)

获取系统缩放后的分辨率方法一

import win32api, win32con, win32gui, win32com, win32print
from win32.lib import win32con
w = str(win32api.GetSystemMetrics(0))
h = str(win32api.GetSystemMetrics(1))
print(w, h)

获取系统缩放后的分辨率方法二

import ctypes
w = ctypes.windll.user32.GetSystemMetrics(0)
h = ctypes.windll.user32.GetSystemMetrics(1)
print(w, h)

获取系统缩放后的分辨率方法三

import win32api,win32con
w = win32api.GetSystemMetrics(win32con.SM_CXSCREEN) #获得屏幕分辨率X轴
h = win32api.GetSystemMetrics(win32con.SM_CYSCREEN) #获得屏幕分辨率Y轴
print(w, h)

获取pc真实的分辨率

import win32api, win32con, win32gui, win32com, win32print
from win32.lib import win32con
hdc = win32gui.GetDC(0)
w = win32print.GetDeviceCaps(hdc, win32con.DESKTOPHORZRES)
h = win32print.GetDeviceCaps(hdc, win32con.DESKTOPVERTRES)

### 更改通过HDMI连接的显示器或电视的分辨率设置 #### Windows操作系统中的解决方案 对于Windows系统,当面对HDMI连接设备显示不正常的情况时,可以利用NVIDIA控制面板来进行调整[^3]。具体的操作方式是在桌面上点击鼠标右键并选择NVIDIA控制面板,在左侧菜单栏找到“显示”,再点击其中的“更改分辨率”。值得注意的是,应优先考虑PC类别的分辨率选项而非预设好的Ultra HD、HD等针对高清电视的标准。 ```python # Python代码仅作为示例展示逻辑流程,并非实际可执行脚本 def change_resolution_windows(): right_click_desktop() # 假定函数用于模拟桌面右击动作 select_nvidia_control_panel() # 打开NVIDIA控制面板 navigate_to_display_settings() # 寻找并进入显示设置界面 choose_custom_resolution() # 选取自定义分辨率或其他合适选项 ``` #### Linux操作系统中的解决方案 而在Linux环境下,则可以通过命令行工具`xrandr`实现对HDMI连接设备分辨率的手动配置[^4]。首先运行`xrandr`指令获取现有输出端口及其支持的分辨率列表;接着运用`cvt`创建一个新的模式(例如1920×1080@60Hz),之后借助`xrandr --newmode ...`添加此新模态至系统中;最后一步则是将这个新建的模式应用到对应的HDMI接口上(`xrandr --addmode HDMI1 "1920x1080_60.00"`), 并激活它(`xrandr --output HDMI1 --mode "1920x1080_60.00"`)。 ```bash # 获取当前可用的输出端口和其状态 $ xrandr # 创建一个名为 '1920x1080_60.00' 的新视频模式 $ cvt 1920 1080 60 # 将上述模型加入X服务器 $ xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync # 把刚才建立的新模式关联给特定的输出端口(HDMI1为例) $ xrandr --addmode HDMI1 "1920x1080_60.00" # 应用新的分辨率设定 $ xrandr --output HDMI1 --mode "1920x1080_60.00" ``` 为了防止重启后这些改动失效,还可以编辑启动文件或者使用图形化界面的应用程序保存这些变更以便持久生效。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值