3
我使用下面的代码通过以中心点为原点的角度旋转图像。使用c中的平移变换顺时针和逆时针旋转图像#
private Bitmap rotateImage(Bitmap b, float angle)
{
Bitmap returnBitmap = new Bitmap(b.Width, b.Height);
Graphics g = Graphics.FromImage(returnBitmap);
g.TranslateTransform((float)b.Width/2, (float)b.Height/2);
g.RotateTransform(angle);
g.TranslateTransform(-(float)b.Width/2,-(float)b.Height/2);
g.DrawImage(b, new Point(0, 0));
return returnBitmap;
}
,就会出现问题,当我尝试旋转之后将图像恢复到其初始的角度performed.I打算通过的角度再次旋转图像来做到这一点(360 anglerotated),但这不是工作和图像的边缘似乎被削减。 有没有更好的解决方案来旋转c#中的图像。我只是想旋转图像到一个角度而没有向两侧弯曲,然后以对角度旋转图像以取消所施加的旋转,因此前一图像被恢复。
似乎目标图像必须大于源代码并将其绘制在中心。 –
它被切割的边缘或角落? – leppie
@leppie是的。角落被切断。 – techno