当前位置: 首页 > 面试题库 >

以4k(3840 * 2160)分辨率缩放Tkinter GUI?

陈君之
2023-03-14
问题内容

我在VirtualBox中使用LinuxMint 17.3 Cinnamon,本机使用1920 * 1080分辨率,Hi-
DPI选项已打开。主机为Windows 10,分辨率为3840 * 2160。
尽管在LinuxMint中启用了Hi-DPI选项,但在缩放方面,某些应用程序看起来很适合舒适的工作,但是python-tk
GUI(python2)尚未更改-字体很小,Cinnamon中的Font选项也有所更改不会更改tk中的字体。有什么办法可以正确扩展已经编写的tk
GUI应用程序?


问题答案:

tkinter具有内部比例因子,可用于将诸如点和英寸之类的度量转换为像素。您可以使用“ tk
scale”命令进行设置。此命令采用一个参数,即一个“点”中的像素数。点为1/72英寸,因此比例因子1.0适用于72DPI显示。

root = Tk()
root.tk.call('tk', 'scaling', 2.0)

根据类似问题的评论,这不会影响默认字体,因为它们是在tkinter上下文之外定义的。如果以磅为单位指定自己的字体,则它们应采用此设置。

在官方文档的scaling命令是这样的:

设置和查询Tk用来在物理单位(例如,点,英寸或毫米)和像素之间转换的当前比例因子。number参数是一个浮点数,它指定窗口显示上每个点的像素数。如果省略window参数,则默认为主窗口。如果省略number参数,则返回缩放因子的当前值。

“点”是等于1/72英寸的度量单位。缩放因子1.0对应于每个点1个像素,这相当于标准的72 dpi监视器。比例因子1.25表示每点1.25像素,这是90
dpi显示器的设置;在72
dpi显示器上将比例因子设置为1.25会使应用程序中的所有内容显示为正常值的1.25倍。比例因子的初始值是在应用程序启动时根据安装的监视器的属性设置的,但可以随时更改。更改比例因子后进行的测量将使用新的比例因子,但是尚不确定现有小部件是否会动态调整自身大小以适应新的比例因子。



 类似资料:
  • 我有一个java的列表。awt。图像,每个分辨率为300 DPI。我想打印它们,当我开始打印这些图像时(使用javax.PrintService API),只打印一些图像的一部分,因为Java的打印/3D类默认使用72DPI(相对于我的图像的300 DPI)。但是,当我使用72 DPI的图像(与Java默认值具有相同的分辨率)时,所有图像都可以很好地打印(打印整个图像时,而不仅仅是其中的一部分)。

  • 我目前正在尝试用分辨率来制作我的简单游戏比例。我注意到,当我改变分辨率时,并不是一切都正常。例如,从1280x720到1920x1080的转换,跳跃距离会略有变化。我注意到的主要问题是,当我以一定的速度发射炮弹时。在较低的分辨率下,它在屏幕上的传播速度似乎要快得多,我不明白为什么,因为它应该随着窗口的大小缩小。以下是发射炮弹的代码片段: 在这个场景中,m是我正在创建的一个盒子。在新盒子中(产卵x坐

  • 功能介绍 获取百度移动统计平台的全部屏幕分辨率列表 接口 https://openapi.baidu.com/rest/2.0/mtj/svc/config/getScreenList?access_token={ACCESS_TOKEN} 请求参数 参数名 类型 描述 样例 access_token string 用户登入后获取的token 1.a6b7dbd428f731035f771b8d

  • 好的,这里有一个奇怪的问题,我有问题(用gcc btw编译) 下面是用于命令提示的Mandelbrot分形生成器的源代码。我以前做过这项工作,我想加快自己的测试速度,看看我能以多快的速度生成命令提示符中实际生成Mandelbrot分形所需的代码。我经常这样做是为了给自己找点乐子 不管怎样,我遇到了一个新问题,我不太明白问题是什么。当分形呈现时,无论我设置了多少次迭代或什么转义值,它都将始终显示为椭

  • iPhone 分辨率汇总 机型分辨率 iPhone型号 pt scale px 宽高比 statusBar tabBar iPhone 4s 320 * 480 2 1.5 20 49 iPhone 5 320 * 568 2 1.775 ↑ ↑ iPhone 5s 320 * 568 2 1.775 ↑ ↑ - - - - - - - iPhone 6/7/8 375 * 667 2 1.778