什么定义了Web字体中的字符宽度?

问题描述 投票:3回答:2

字体大小似乎适用于字体“盒子”的高度,据我所知,它是在字体文件本身中定义的。因此对于相同的字体大小,任何角色,无论其视觉高度,都应该在一个相同高度的盒子里面。

那么,字符的宽度定义在哪里?

字符宽度也需要与font-size相关,但每个字符似乎有不同的宽度(通过this testthis test)。这是不规则的,因为高度似乎是这种情况。因此,字体中定义的框的宽度不是定义每个字符宽度的宽度。

然后,在哪里/如何定义?

html css typography
2个回答
0
投票

字体中每个字形(字符)的定义具有与字体大小成比例的宽度值。因此,对于真正的字体,通常将字体大小分解为2048个单位。然后每个字形的宽度定义为许多相同的单位。

因此,例如,使用Arial字体,字符i的宽度为180个单位(AW - (LSB + RSB)= 455 - (136 + 139))

Glyph metrics for i character

w的宽度为1457个单位(AW - (LSB + RSB)= 1479 - (6 + 16))

Glyph metrics for w character

(从TypeLight 3.2捕获的图像)


0
投票

据我所知,宽高比率或多或少是一个标准。它通常不会改变。 font size属性是一种扩展它们的方法。对于给定的字体,比率保持不变。这是一个链接,提供有关比率图表的更多详细信息:

https://www.lifewire.com/aspect-ratio-table-common-fonts-3467385

因此,如果以像素为单位的字体大小定义高度,则宽度由font-family的宽高比定义,您可以根据文章更改:style.fontSizeAdjust。

© www.soinside.com 2019 - 2024. All rights reserved.