使用 .Net Core 读取简单的图像元数据



我看过几篇关于这个的帖子,但我无法应用其中任何一个。这可能是由于文档更改。我使用了ImageSharp和System.Drawings。 System.Drawings 在 .Net Core 中不受支持。我发现的ImageSharp样本也不起作用。(我不是 C# 专家)

这是我用来使用 Imagesharp 获取元数据的方法

using (Image<Rgba32> image = Image.Load(input))
{
var exif = image.MetaData.ExifProfile.GetValue;
var met = exif.GetValue(SixLabors.ImageSharp.MetaData.Profiles.Exif.ExifTag.ImageDescription);   
}

问题是我exif变量为 null(我不确定我做错了什么)。是否有一个简单的代码示例可用于执行此操作?我试图 https://docs.sixlabors.com/api/ImageSharp/SixLabors.ImageSharp.MetaData.Profiles.Exif.ExifProfile.html 阅读这里的文档,但我不知道如何使用它。任何帮助将不胜感激。

我认为这一行是错误的:

var exif = 图像。MetaData.ExifProfile.GetValue;

只需从末尾删除.GetValue,因为您在此处引用方法。

所以

using (var image = Image.Load(input))
{
var exif = image.MetaData.ExifProfile;
var met = exif.GetValue(SixLabors.ImageSharp.MetaData.Profiles.Exif.ExifTag.ImageDescription);
}

最新更新