我看过几篇关于这个的帖子,但我无法应用其中任何一个。这可能是由于文档更改。我使用了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);
}