C#窗体实现png图片旋转
时间: 2023-06-24 11:07:16 浏览: 135
可以使用C#中的Graphics类来实现图片旋转,以下是一个简单的例子:
```C#
// 加载图片
Bitmap bmp = new Bitmap("image.png");
// 创建一个Graphics对象
Graphics g = Graphics.FromImage(bmp);
// 将原点移至图片中心
g.TranslateTransform(bmp.Width / 2, bmp.Height / 2);
// 旋转角度
float angle = 30;
// 旋转图片
g.RotateTransform(angle);
// 将旋转后的图片保存
bmp.Save("rotated_image.png");
```
注意,此处我们是将原点移至图片中心,进行旋转操作后再将图片保存。如果你希望在窗体中显示旋转后的图片,可以将旋转后的Bitmap对象作为PictureBox控件的Image属性值。
相关问题
C#窗体软件旋转png实例
以下是C#窗体软件旋转png的示例代码:
```csharp
using System.Drawing;
using System.Drawing.Drawing2D;
// 加载png图片
Image img = Image.FromFile("image.png");
// 创建一个新的Bitmap对象
Bitmap bmp = new Bitmap(img.Width, img.Height);
// 创建一个Graphics对象
Graphics g = Graphics.FromImage(bmp);
// 设置旋转角度
float angle = 45.0f;
// 设置旋转中心点
PointF center = new PointF(img.Width / 2, img.Height / 2);
// 设置旋转矩阵
Matrix matrix = new Matrix();
matrix.Translate(center.X, center.Y);
matrix.Rotate(angle);
matrix.Translate(-center.X, -center.Y);
// 应用旋转矩阵
g.Transform = matrix;
// 绘制旋转后的图片
g.DrawImage(img, new Point(0, 0));
// 保存旋转后的图片
bmp.Save("rotated_image.png");
```
在这个示例中,我们首先加载PNG图像,然后创建一个新的Bitmap对象和一个Graphics对象。我们设置旋转角度和旋转中心点,并创建一个旋转矩阵。最后,我们将旋转矩阵应用于Graphics对象,并使用DrawImage方法绘制旋转后的图像。我们最后将旋转后的图像保存为PNG文件。
阅读全文