小编Nan*_*ead的帖子

如何旋转图像然后移动到左上角0,0而不切断图像

如何旋转图像然后移动到左上角0,0而不切断图像.

请阅读代码中的注释.我陷入了第3步,我认为使用三角法应该能够解决这个问题.

谢谢

private Bitmap RotateImage(Bitmap b, float angle)
{
    //create a new empty bitmap to hold rotated image
    Bitmap returnBitmap = new Bitmap(b.Width, b.Height);
    //make a graphics object from the empty bitmap
    Graphics g = Graphics.FromImage(returnBitmap);
    //STEP 1 move rotation point to top left
    g.TranslateTransform((float)0, (float)0);
    //STEP 2 rotate
    g.RotateTransform(angle);
    //STEP 3 move image back to top left without cutting off the image
    //SOME trigonometry calculation here
    int newY = b.Height;
    g.TranslateTransform(-(float)0, -newY);
    //draw passed in image onto graphics …
Run Code Online (Sandbox Code Playgroud)

c# gdi+

1
推荐指数
1
解决办法
3628
查看次数

标签 统计

c# ×1

gdi+ ×1