如何利用Image.LoadAsync<Rgba32>读取文件夹中的多张图片
时间: 2024-03-23 18:38:48 浏览: 61
您可以使用以下代码实现从文件夹中加载多个图像:
```csharp
using System.IO;
using System.Threading.Tasks;
using SixLabors.ImageSharp;
using SixLabors.ImageSharp.PixelFormats;
public async Task LoadImagesAsync(string folderPath)
{
// 获取文件夹中的所有图像文件
var files = Directory.GetFiles(folderPath, "*.jpg");
// 遍历所有文件并加载图像
foreach (var file in files)
{
using (var image = await Image.LoadAsync<Rgba32>(file))
{
// 在这里处理每个图像
// 例如,您可以将其保存到另一个文件夹中
// 或者对其进行处理并将其合并到一个新图像中
}
}
}
```
在上面的代码中,我们使用Directory.GetFiles方法获取文件夹中所有扩展名为".jpg"的文件的完整路径,并使用foreach循环遍历每个文件。在循环体内,我们使用await关键字异步加载每个图像,并使用using语句确保在使用完图像后正确释放资源。在图像加载完成后,您可以在循环体内处理它们,例如将其保存到另一个文件夹中或对其进行处理并将其合并到一个新图像中。
阅读全文