C# 图片框旋转
本文关键字:旋转 | 更新日期: 2023-09-27 18:34:53
如何在PictureBox
内旋转图像?我的PictureBox
中有一个简单的吃豆人.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# 中操作动画 GIF 并不是真正支持的。