如何计算 Font 对象的 x 高度(即 ex)?
x 高度是一种字体度量,以 em 高度给出, 大约是 em 的 0.48,但这取决于字体...
在 CSS 中,这两个单位可用,我对 ex 单位感兴趣。还有一个 em 单位,因此 ex 单位是用它给出的。
下表显示了可通过以下站点获取的一些指标:
http:// www.cs.tut.fi/~jkorpela/x-height.html
Arial 0.519
Arial Unicode MS 0.518
Calibri 0.466
Cambria 0.466
Candara 0.463
Code2000 0.444
Comics Sans MS 0.532
Courier 0.425
Courier New 0.423
Garamond 0.384
Georgia 0.481
Helvetica 0.523
Tahoma 0.545
Times New Roman 0.448
Trebuchet MS 0.523
Verdana 0.545
我想知道 C# 中给定 Font 对象的 x 高度。我这样得到 M 高度:
TextRenderer.MeasureText("M", font).Height
但我不知道如何得到 x 高度。
使用 WinAPI 是可以接受的。浏览器执行此操作的方式并不重要。他们知道如何计算前值,我也想知道如何获得这个值。请帮忙!!
谢谢。
有助于转换的相关问题 字体到字体:
The x-height is a font metric, that is given in terms of the em-height,
and is approximately 0.48 of an em, but this depends on the font...
In CSS these two units are available, I am interested in the ex unit. There is also an em unit, such that the ex unit is given in terms of it.
The following table shows some metrics, available throug the following site:
http://www.cs.tut.fi/~jkorpela/x-height.html
Arial 0.519
Arial Unicode MS 0.518
Calibri 0.466
Cambria 0.466
Candara 0.463
Code2000 0.444
Comics Sans MS 0.532
Courier 0.425
Courier New 0.423
Garamond 0.384
Georgia 0.481
Helvetica 0.523
Tahoma 0.545
Times New Roman 0.448
Trebuchet MS 0.523
Verdana 0.545
I want to know the x-height of a given Font object in C#. I get the M height like this:
TextRenderer.MeasureText("M", font).Height
But I can not figure out how to get the x-height.
Using WinAPI is acceptable. It does not matter the way... browsers do this. They know how to calculate the ex value, I want to know how to get this value too. Please help!!
Thanks.
Related question that helps convert
Font to Typeface:How to convert System.Drawing.font to
System.Windows.Media.Fonts or
TypeFace
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
查看 GlyphTypeface 类 或 FamilyTypeface 类。
Check out the GlyphTypeface Class or FamilyTypeface Class.