繁体   English   中英

C#Picturebox旋转

[英]C# Picturebox rotation

如何在PictureBox内部旋转图像? 我的PictureBox有一个简单的pacman.gif图像,它在运行时可以正常运行(向各个方向移动)。 但是我想在按向左或向右键时旋转gif。 实际上,它旋转得很好,但是在运行时动画会停止工作。

 private void Form1_KeyDown(object sender, KeyEventArgs e)
    {
        switch (e.KeyCode)
        {
            case Keys.Left:
                pictureBox1.Left -= 7;
                break;
            case Keys.Right:
                  pictureBox1.Image.RotateFlip(RotateFlipType.RotateNoneFlipX);
        pictureBox1.Left += 7;
                break;
            case Keys.Up:
                pictureBox1.Top -= 7;
                break;
            case Keys.Down:
                pictureBox1.Top += 7;
                break;
        }

    }

这是我的代码。 但是gif无法正常工作。

至少原则上,使用RotateFlip方法在正确的轨道上,尽管我看不到您在进行旋转,但您显示的代码只是翻转。

不要听那些链接到自由旋转代码的人; 您只需要旋转90°或倍数即可。

但是, 您只是不能旋转动画的gif并期望它以后能够正常工作。

相反,您应该使用gif创建/编辑工具,并在此处创建旋转和/或翻转的版本,并在转弯时加载正确的版本。

GDI方法只会旋转第一帧并有效破坏gif中的动画。 实际不支持在c#ist中处理动画gif。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM