我正在寻找简单直接的解决方案来访问.Net中的jpeg图像的EXIF信息。有人有这方面的经验吗?
答案 0 :(得分:7)
如果您正在针对框架的v3(或更高版本)进行编译,那么您可以使用BitmapSource
class加载图片,Metadata
property通过{{3}}
答案 1 :(得分:6)
Simon McKenzie创建了一个新的非常快的库ExifLib - A Fast Exif Data Extractor for .NET 2.0。我最终使用了这个,代码易于使用和理解。我用它作为应用程序根据所用的日期重命名。我想知道有多少次写过这样的应用程序。
我的提示:确保在完成ExifReader对象或文件保持打开后调用Dispose。
答案 2 :(得分:4)
我喜欢Atalasoft's DotImage Photo,但它是一个封闭的源解决方案,每个开发许可证的成本约为600。
您还可以查看DTools at Codeplex,这是一个旨在补充标准Fx的开源框架。它包括一些与Exif相关的类。
答案 3 :(得分:4)
我在feeddemon中保存的那个,当我有时间(程序员的时间是什么时候,LOL)低于我时,我可以查看更多
ExifTagCollection - EXIF Metadata extraction library
麦克
答案 4 :(得分:3)
如果您愿意使用开源库,我可以谦虚地建议我自己的创作吗?
自2002年以来, metadata-extractor 项目一直活跃于Java,现在可用于.NET。
样本用法:
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}");
答案 5 :(得分:2)
查看此metadata extractor。它是用Java编写的,但也被移植到C#。我已经使用Java版本编写了一个小工具来根据日期和模型标签重命名我的jpeg文件。非常容易使用。
答案 6 :(得分:0)
几年前,我与Omar Shahine一起创建了一个JPEG EXIF应用程序来处理JPEG EXIF文件,称为JpegHammer。
他从该项目中提取了一个库并称之为PhotoLibrary,它是EXIF 2.2标签的简单.NET包装器。不幸的是,GotDotNet网站已经消失,CodePlex没有它,Omar的网站链接不起作用,我再也没有副本了。
但是,如果你可以在Google周围挖掘,也许你会找到它并且它会为你做到这一点。