在 .NET 的 System.Drawing 命名空间中看不到图像类型
Cannot see the Image type in System.Drawing namespace in .NET
我正在尝试编写一个程序,按尺寸对特定文件夹中的图像进行排序,并通过简单的 .NET 控制台应用程序将小图像移动到另一个文件夹。我决定使用 System.Drawing.Image class 从图像文件中获取图像尺寸。但我遇到以下错误:
The type or namespace name 'Image' could not be found (are you missing
a using directive or an assembly referrence?)
我究竟做错了什么,为什么它看不到这个 class?
以下是我的程序的完整代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Drawing;
namespace ImageSort
{
class Program
{
static void Main(string[] args)
{
string targetPath = @"d:\SmallImages";
string[] files = Directory.GetFiles(@"d:\Images");
foreach (string path in files)
{
if (File.Exists(path))
{
Image newImage = Image.FromFile(path);
var Width = (int)(newImage.Width);
var Height = (int)(newImage.Height);
if (Width * Height < 660000) {
System.IO.File.Move(path, targetPath);
}
}
}
}
}
}
您需要添加参考:System.Drawing.dll.
在Solution Explorer
中,右击References
节点,选择添加Reference
,找到System.Drawing.dll
.
.NET Core 3.1 这个问题的答案是简单地从 NuGet 安装System.Drawing.Common。
我正在尝试编写一个程序,按尺寸对特定文件夹中的图像进行排序,并通过简单的 .NET 控制台应用程序将小图像移动到另一个文件夹。我决定使用 System.Drawing.Image class 从图像文件中获取图像尺寸。但我遇到以下错误:
The type or namespace name 'Image' could not be found (are you missing a using directive or an assembly referrence?)
我究竟做错了什么,为什么它看不到这个 class? 以下是我的程序的完整代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Drawing;
namespace ImageSort
{
class Program
{
static void Main(string[] args)
{
string targetPath = @"d:\SmallImages";
string[] files = Directory.GetFiles(@"d:\Images");
foreach (string path in files)
{
if (File.Exists(path))
{
Image newImage = Image.FromFile(path);
var Width = (int)(newImage.Width);
var Height = (int)(newImage.Height);
if (Width * Height < 660000) {
System.IO.File.Move(path, targetPath);
}
}
}
}
}
}
您需要添加参考:System.Drawing.dll.
在Solution Explorer
中,右击References
节点,选择添加Reference
,找到System.Drawing.dll
.
.NET Core 3.1 这个问题的答案是简单地从 NuGet 安装System.Drawing.Common。