旋转正方形而不会弄乱x和y

时间:2016-06-18 20:57:01

标签: c# vb.net rotation gdi+ gdi

所以我在确定这些坐标时遇到了一些麻烦。

当我e.Graphics.RotateTransform(45)时,结果如下:

e.Graphics.RotateTransform result

我想要发生什么,以及任何照片编辑软件中发生的事情都是:

Desired outcome

这是代码。我知道sqrt(2)比率并不适合旋转它,但是我会在我把它弄下来后修复它。

这是我使用的代码,它会产生错误的输出:

Using G As Graphics = Graphics.FromImage(Canvas)
        With G

            .TextRenderingHint = Text.TextRenderingHint.AntiAlias
            .CompositingQuality = CompositingQuality.HighQuality
            .SmoothingMode = SmoothingMode.AntiAlias

            ' ROTATE AT 45 DEGREES
            '.RotateTransform(45)
            .DrawRectangle(New Pen(Color.Black, LineWidth), New Rectangle(New Point((Dims - NewSize) / 2, (Dims - NewSize) / 2), New Size(NewSize, NewSize)))

            ' NON-TRANSFORMED STUFF
            ' G.DrawString("ayy lmoa", New Font(New FontFamily("Arial"), 16, FontStyle.Bold), Brushes.Black, New Point(0, 0))
        End With
End Using

之前有没有人处理过这样的事情?

0 个答案:

没有答案