2015-02-11 122 views
0

我想知道如何使用SharpDX旋转Direct2D渲染的文本。SharpDX DirectWrite旋转文本

不能在

RenderTarget2D.DrawText()

RenderTarget2D.DrawTextLayout找到任何方法可行()

回答

2

你可以使用一个Transformation Matrix和更精确 - 通过一个rotation transformation 3x2矩阵。

伪例如:

RenderTarget2D.BeginDraw; 
try 
    // your regular drawings 
    .... 

    // save the current tranform 
    currentTransform = RenderTarget2D.GetTransform; 

    // set a 90 degree rotation around the (100,100); 
    RenderTarget2D.SetTransform(Matrix3x2F.Rotation(90, Point2F(100,100))); 

    // do your rotated text drawings 
    RenderTarget2D.DrawText(); 

    // restore your previous/original transform 
    RenderTarget2D.SetTransform(currentTransform); 
finally 
    RenderTarget2D.EndDraw; 
end; 
+0

就像一个魅力 – zaimen 2015-02-12 06:57:20