如何从命令行设置 wine DPI?

如何从命令行设置 wine DPI?

我有一个高 DPI 显示器,每次我创建 Wine 前缀时,默认的 96 dpi 都是很小的。是否有某种控制台命令或脚本可以运行来设置 dpi,而不必眯着眼睛看 winecfg 窗口?

我发现该Software/System/CurrentControlSet/Hardware Profiles/Current/Software/Fonts/LogPixels键表示 DPI。问题是我找到的每个资源都说要使用 GUI 程序 regedit 编辑注册表。这比 winecfg 还痛苦!我记得,在 Windows 中您可以编写.reg可以设置注册表项的文件。是否可以做到这一点并以某种方式仅从命令行加载密钥?

如果做不到这一点,是否有可能以某种方式绕过 winecfg 并直接编辑注册表文件?

答案1

是的。与 Windows 本身中的 REGEDIT.EXE 一样,WINE 的regedit程序采用可选的文件名参数。如果该文件是有效的 regedit 文件,它会将其应用到当前 WINEPREFIX 中的注册表。

例如

regedit /path/to/filename.reg

如果您还没有包含所需注册表项和值的有效 regedit 文件,则可以使用 regedit-E选项创建一个。例如

regedit -E /path/to/filename.reg 'Software/System/CurrentControlSet/Hardware Profiles/Current/Software/Fonts/LogPixels'

man regedit

顺便说一句,我不知道该密钥是否正确甚至有效。我只是使用它,因为这就是你在问题中提到的。我本以为它需要以 HKEY_CURRENT_USER 或类似的前缀,但我真的不是 Windows 或其注册表方面的专家,我只是掌握了让一些游戏在 WINE 中运行的最低限度的知识。

答案2

/.wine/user.reg改变 的值时LogPixels

该值是十六进制的,您可以使用 进行转换printf '%.8X\n' "[DECIMAL]"

相关内容