在.NET中获取图像元数据而不考虑元数据格式

时间:2008-10-10 23:03:10

标签: .net image metadata geotagging

给定文件名,我需要能够访问我正在开发的(闭源)项目的图像中的某些元数据,而不考虑元数据的存储方式(即Exif,IPTC或XMP) )。特别是,我想访问地理标记数据。

有没有办法做到这一点没有需要任何第三方程序集或库(即它是否可以使用Microsoft .NET库存)以及如何完成?还是我坚持使用WIC的很多P / Invoking?

2 个答案:

答案 0 :(得分:3)

检查FreeImage project - 具有.NET包装器的C ++映像加载和处理。也许它可以做到这一点

答案 1 :(得分:2)

老问题,我知道,但EXIF只能用基础.NET框架(没有第三方DLL)提取。 EXIF项可以从Image对象中提取为PropertyItems。我正在使用类似于此的方法将特定属性提取为字符串(例如Date Taken或Maker Note):

public static string GetEXIFInfo(System.Drawing.Image img, int propertyItem) {
    return new ASCIIEncoding().GetString(img.GetPropertyItem(propertyItem).Value);
}

以下是可用于获取各种EXIF值的propertyitem值列表:http://msdn.microsoft.com/en-us/library/ms534416%28VS.85%29.aspx