C#遍历文件夹所有图像转角度
时间: 2024-12-24 09:39:27 浏览: 12
在C#中,你可以使用DirectoryInfo类和FileInfo类以及System.Drawing命名空间中的Image类来遍历指定文件夹内的所有图像文件,并对它们应用旋转操作。以下是一个简单的示例,展示如何遍历文件夹、获取所有图片文件并将其顺时针旋转90度:
```csharp
using System;
using System.IO;
using System.Drawing;
public class ImageRotation
{
public static void RotateImagesInFolder(string folderPath)
{
if (!Directory.Exists(folderPath))
{
Console.WriteLine($"The specified directory does not exist: {folderPath}");
return;
}
var images = Directory.GetFiles(folderPath, "*.jpg;*.jpeg;*.png;*.gif", SearchOption.AllDirectories); // 指定需要搜索的图像文件类型
foreach (var imagePath in images)
{
using (var image = Image.FromFile(imagePath))
{
var rotatedImage = new Bitmap(image.Width, image.Height);
Graphics g = Graphics.FromImage(rotatedImage);
// 顺时针旋转90度
int rotationAngle = 90;
g.RotateTransform(rotationAngle);
g.DrawImage(image, new Point(0, 0));
rotatedImage.Save(imagePath, image.RawFormat);
Console.WriteLine($"Rotated file: {imagePath}");
}
}
}
}
// 调用函数
void Main()
{
string folderToRotate = @"C:\YourFolderPath\"; // 替换为你想要遍历的实际文件夹路径
ImageRotation.RotateImagesInFolder(folderToRotate);
}
```
阅读全文