将目录中的每个图像转换为位图

本文关键字:图像 转换 位图 | 更新日期: 2023-09-27 18:33:56

我正在尝试从目录中获取所有图像,然后将每个图像转换为位图,以便我可以在那里获得属性(高度,宽度等)。 我有"使用System.Drawing",但我对FromFile部分有疑问。 不太确定从这里做什么,因为我无法弄清楚实际从哪个路径获取文件。

        // get all files from directory
        DirectoryInfo di = new DirectoryInfo(@"C:'Users'ahaycraft'Desktop'TestImages");
        var directories = di.GetFiles("*", SearchOption.AllDirectories);
        Console.WriteLine("Done");

        foreach (FileInfo d in directories) 
        {
         //convert images to bmp;
            using (var bmp = (Bitmap)Image.FromFile(""))
        {

将目录中的每个图像转换为位图

您可以使用FullName属性来获取文件的完整路径。

using (var bmp = (Bitmap)Image.FromFile(d.FullName))

或者,如果您对文件的其他属性不感兴趣,并且只需要 path,请改用Directory.GetFiles方法。

var filePaths = Directory.GetFiles(@"C:'Users'ahaycraft'Desktop'TestImages",
                                    "*", SearchOption.AllDirectories);
foreach (var path in filePaths)
{
    using (var bmp = (Bitmap)Image.FromFile(path))
    {
       // ...
    }
}