我的结论是这无法完成,因为我似乎无法访问格式化文本对象的上升高度。作为一个粗略的近似值,我正在使用:
public static double GetCapitalX(this FormattedText text)
{
double bottom = text.Height + text.OverhangAfter; // bottom most inked pixel
/* this is wrong since the Extent includes the ascender height. But it's the best I can do. */
double capitalX = text.Extent - (bottom - text.Baseline);
return capitalX;
}
有没有更好(更准确)的方法?任何帮助表示赞赏。