我正在尝试将许多(1000+)图像从tiff转换为jpg,但是在appr之后。对于任何进一步的图像,250-300张图像大约需要5-10秒,即使前250张需要20秒。
这是我使用的代码:
foreach (string filePath in Directory.GetFiles(tifPath, "*.tif", SearchOption.AllDirectories))
{
System.Drawing.Image.FromFile(filePath).Save(jpgPath + "\\" + Path.GetFileNameWithoutExtension(filePath) + ".jpg", ImageFormat.Jpeg);
}
我的方法有问题吗?提前谢谢。
答案 0 :(得分:1)
图像需要处理,否则它会留在内存中:
foreach (string filePath in Directory.GetFiles(tifPath, "*.tif", SearchOption.AllDirectories))
{
using (var image = System.Drawing.Image.FromFile(filePath))
{
image.Save(jpgPath + "\\" + Path.GetFileNameWithoutExtension(filePath) + ".jpg", ImageFormat.Jpeg);
}
}
有关使用语句的详细信息,请参阅此站点: