我正在编写的这个小型Web应用程序将一些文本填充到一个临时的不可见容器中,测量所得的高度,然后使用它基于该高度生成一些GUI。

这样做是因为并非所有字体都是等间距的,因此每次都需要测量以确定它们将占用多少空间。

现在,我可能需要缩放整个UI以适合不同的屏幕尺寸,并且想知道是否可以可靠地缩放结果高度。

简而言之:缩放时是否保证所有前面的字形都成比例?或者在不同的字体大小下,您是否可以具有不同的字形宽度/间距?

例如大小为20的字体集是否总是总是大小为10的字体集的2倍?

编辑:这是我做过的测试的另一种看法,并张贴在下面的评论中:

最佳答案

当您将字体大小加倍时,它会精确地加倍。但这并不意味着字形是按比例缩放的。字体大小只是字体的属性,而不是字形的属性。字形已缩放,但由于渲染的粒度,结果并非正确,也无法准确:必须对抽象字形进行栅格化(即转换为像素图),这不可避免地会更改其形状。

例如,考虑字母“ e”的水平笔划。宽度当然取决于字体大小,但是在光栅化中,需要将其映射到一个像素,两个像素或其他一些像素。即使是亚像素渲染也不会改变这种情况。它只是修改了光栅化的工作方式。因此,在屏幕(或纸张)上呈现的笔划宽度不能完全反映字体大小。字形中的不同笔画的行为也会有所不同,因此字体大小的增加并不意味着字形的精确放大。

关于html - 缩放后字形会保持比例吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23439583/

10-13 00:10