【问题标题】:What is the best way to draw text along with geometry?将文本与几何图形一起绘制的最佳方法是什么?
【发布时间】:2009-06-24 04:01:56
【问题描述】:

在 WPF 中,我开始使用 LineGeometry、EllipseGeometry、GeometryGroup、Path... 等类来绘制 2D 图形。我之所以选择这些形状,是因为我发现由于冻结功能,它可以更快。

我需要使用特定字体绘制文本和几何图形。文本需要使用与几何图形相同的坐标系进行定位。而且我需要能够应用诸如 RotateTransform 之类的变换。

最好的方法是什么?我遇到过 GlyphRunDrawing 类,但它真的很复杂。

非常感谢。

【问题讨论】:

标签: wpf text geometry draw


【解决方案1】:

要创建文本几何图形,只需使用 FormattedText.BuildGeometry,例如,在点 (5,5) 使用 16 像素的 Tahoma 字体获取“要显示的文本”几何图形:

    FormattedText text = new FormattedText("Text to display",
        CultureInfo.CurrentCulture,
        FlowDirection.LeftToRight,
        new Typeface("Tahoma"),
        16,
        Brushes.Black);
    Geometry geometry = text.BuildGeometry(new Point(5, 5));

如果您需要在 XAML 中执行此操作,您可以将此代码包装在 MarkupExtention 中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多