如何在C#中获取字形指标

  • 本文关键字:字形 获取 c# fonts
  • 更新时间 :
  • 英文 :


我正在创建这样的 Font对象:

var font = new Font(font_name, font_size);

其中font_nameSystem.Drawing.FontFamily.Families获得。我使用:

将字符渲染到图像中
var char_renderer = Graphics.FromImage(char_image);
char_renderer.DrawString(ch.ToString(), font, new SolidBrush(Color.White), 0, 0);

只能通过获得此信息才能获得char指标(提前,kerning等)?

我在许多地方都发现我应该使用System.Windows.Media.GlyphTypeface来获取指标,但是我找不到任何直接的方法来从FontGlyphTypeface

以下应有作用:

// create typeface from font
var typeface = new Typeface("Arial");
// create glyphtypeface
typeface.TryGetGlyphTypeface(out var glyphTypeface);
// retrieve metrics
glyphTypeface.AdvanceHeights.TryGetValue('S', out var advancedHeight);

最新更新