可以用奇异码获得设备的物理尺寸吗?

Psi*_*man 6 python kivy

有谁知道Kivy如何用不同的字体呈现文本?

我在16sp处有文字标签。

在屏幕尺寸为(1024、552)和(2048、1536)的平板电脑上,它可以完美工作(宽高比分别为1.855和1.333) 在此处输入图片说明

在屏幕大小为(1280,720)(比率1.778)的PC上,它也可以完美显示,但是在屏幕大小为该大小的手机上,字母会被截断 在此处输入图片说明

唯一的区别是设备的物理尺寸。因此看来,Kivy文本不是根据某些基于像素的算法绘制的,而是考虑了屏幕的物理尺寸

有什么方法可以确定Kivy的实际尺寸吗?因此,请允许我相应地调整字体大小。如果我使用较小的(10sp)字体,则文本在电话(小型设备)上正确显示,但是在大型设备上,文本显得太小。

小智 8

是的,您可以使用 kivy 确定屏幕的物理尺寸 - 您可以简单地使用此模块:

( from kivy.core.window import Window)

然后通过编写以下内容来确定大小:

( Window.size)

检查此代码(此代码确定简单标签上的屏幕物理尺寸):

???

from kivy.app import App
from kivy.uix.label import Label
from kivy.core.window import Window

class MyApp(App):

   def build(self):

     window_sizes=Window.size

     return Label(text="screen sizes= "+str(window_sizes))

MyApp().run()
Run Code Online (Sandbox Code Playgroud)