我已经搜索了这个主题,但我能找到的唯一合适的主题是2008年,因此我的新问题.
我正在寻找使用C#.Net 4.0语言开发程序.我的程序的目的是从jpegs(制造商,模型,地理位置信息等)中提取EXIF信息,然后将其填充到MySql/Sql服务器数据库中.
任何人都可以推荐任何适合这个项目的好库吗?我也在寻找相机序列号(我知道这在制造商之间有所不同),但是如果有人知道任何现有的库来解决这个问题,那将是最有帮助的.
谢谢,享受周末
自2002年以来,元数据提取器项目一直活跃在Java上,现在可用于.NET 3.5及更高版本.还有一个PCL版本.
样品用法:
IEnumerable<Directory> directories = ImageMetadataReader.ReadMetadata(path);
foreach (var directory in directories)
foreach (var tag in directory.Tags)
Console.WriteLine($"{directory.Name} - {tag.TagName} = {tag.Description}");
Run Code Online (Sandbox Code Playgroud)
(披露:我维护这个库)
这篇CodeProject文章是在上个月编写的,它的API比其他一些.NET EXIF阅读器有了很大的改进:
http://www.codeproject.com/Articles/36342/ExifLib-A-Fast-Exif-Data-Extractor-for-NET-2-0
对于基本的 EXIF 信息(制造商、相机型号、时间、光圈等),我会查看 System.Drawing.Image 类 - 特别是 PropertiesItems 集合。
这个类也有缺点。它需要在检索 EXIF 信息之前将整个图像加载到内存中(即它有点慢)。它也不能处理所有供应商特定的字段,这些字段在相机之间不统一。
我使用它非常成功地收集了有关我的照片集的信息(用十几种不同品牌和型号的不同数码相机拍摄的数万张照片)。