[英]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.