2009-06-24 89 views
18

在WPF中,我開始使用LineGeometry,EllipseGeometry,GeometryGroup,Path ...等類來繪製2D圖形。我選擇了這些形狀,因爲我看到它可以更快地感謝凍結功能。與幾何圖形一起繪製文本的最佳方式是什麼?

我需要使用特定字體來繪製文字以及幾何圖形。文本需要用與幾何圖形相同的座標系進行定位。我需要能夠應用諸如RotateTransform之類的轉換。

什麼是最好的方法?我跑遍了GlyphRunDrawing類,但它非常複雜。

非常感謝。

回答

30

要創建文本幾何只是使用FormattedText.BuildGeometry,例如,以獲得「文本顯示」在字體大小的Tahoma 16個像素在點(5,5)的幾何形狀使用:

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中包裝此代碼

+0

非常感謝! – fury 2009-06-24 16:55:50

相關問題