KerningProperty 和 FontFamily.GetTypeface()方法是什么
时间: 2024-04-28 17:21:43 浏览: 128
KerningProperty 是一个依赖属性,用于指定文本字符之间的间距。在代码中使用 GetValue 方法获取 KerningProperty 的值。
FontFamily.GetTypeface 方法用于获取指定字体族的指定字重和字形的 Typeface 对象。Typeface 对象包含字体的度量信息,如 Ascent、Descent、LineSpacing 和 Kerning 等。在代码中,我们使用 FontFamily.GetTypeface 方法获取指定字体族、字重和字形的 Typeface 对象,然后在该对象的 Metrics 属性中获取 Kerning 信息。
相关问题
FontFamily未包含GetTypeface的定义
非常抱歉,我之前的回答有误。在 WPF 中,FontFamily 类确实没有包含 GetTypeface 方法的定义。要获取 Typeface 对象,可以使用 Typeface 类的 FromFamilyName 方法。以下是一个示例代码:
```csharp
Typeface typeface = new Typeface(FontFamily, FontStyle, FontWeight, FontStretch);
double kerning = typeface.CapsHeight * 0.1;
run.Typography.Kerning = (bool)converter.Convert(Kerning, typeof(bool), null, null) ? kerning : 0;
```
在这个示例中,我们首先创建了一个 Typeface 对象,该对象包含了字体的族、风格、重量和拉伸等信息。然后,我们通过计算字体的 Cap Height(大写字母的高度)来确定 Kerning 的值,并将其赋值给 Run 对象的 Typography.Kerning 属性。注意,这里 KerningToSpacingConverterWPF 转换器的使用与之前的示例相同。
阅读全文