本文写于工作中,因为需要查看手机照片的Exif信息,本来想自己写发现太多要去实现的东西,so想到了拿来主义,网上有现成的API干嘛放着不用呢,可以搜索Metadata这个API,其官网有下载,参考其Doc文档就可以很轻松的实现该功能。
1.读取文件
可以直接通过File去读取一个文件
File file = new File(path);
Metadata metadata = ImageMetadataReader.readMetadata(file);
如果确定了图片的格式,也可以用专门的图片格式的Reader来进行读取,比如JpegMetadataReader来读取。
其实,你也可以用stream来读取
Metadata metadata = ImageMetadataReader.readMetadata(stream, waitForBytes);
这里可以方便的从网络侧去读取一个图片信息。
2.得到Exif的标签
每个照片里面可能没有,也可能不止有一个Exif的标签信息。
可以全部去获取
for (Directory directory : metadata.getDirectories()) {
for (Tag tag : directory.getTags()) {
System.out.println(tag);
}
}
也可以去获取某些特定的Exif信息
// obtain the Exif directory
ExifSubIFDDirectory directory = metadata.getDirectory(ExifSubIFDDirectory.class);
// query the tag's value
Date date = directory.getDate(ExifSubIFDDirectory.TAG_DATETIME);
如果需要得到的值更符合人们的习惯,或者是认为得到的值都是String类型,可以考虑用descriptor去获取
ExifSubIFDDirectory directory2 = metadata.getDirectory(ExifSubIFDDirectory.class);
ExifSubIFDDescriptor descriptor = new ExifSubIFDDescriptor(directory2);
//Console: Aperture priority 光圈优先
System.out.println(descriptor.getExposureProgramDescription());
参考文档
http://www.drewnoakes.com/code/exif/
Doc文档地址
http://metadata-extractor.googlecode.com/git/Javadoc/index.html
分享到:
相关推荐
Exiv2读取图像扩展属性,内含exiv2-0.26-trunk.tar主程序源码,相关编译所需的包libexpat-R_2_1_0、zlib-1.2.9。可自行编译。方便快捷的使用在visual studio 的任何版本上。 图片元数据(Metadata) 是嵌入到图片...
开源图片详细信息提取metadata-extractor,一个很好的开源类库metadata-extractor处理jpeg图片
使用方法 加上一个用到的jar包metadata-extractor-2.3.1.jar
metadata-extractor依赖引入
Metadata Extractor 来读取图片的EXIF信息。目前最简单易用的EXIF信息处理的Java包,该项目最新版本2.14的jar包。
想要获取图片的信息,例如快门速度、ISO值等等,我们可以通过读取Exif中存储的信息。Exif(Exchangeable Image File)是存储在JPEG格式照片头部的一段信息,相机和手机拍摄的照片都会携带这些信息,但是需要注意,PS...
亲测可用 压缩包有测试代码 将压缩将jar包配置好build path 后可以直接测试带有经纬度信息的图片 另外还可以获得图片的高度、宽度、成像时间等等 。
读取图片EXIF信息需要的jar。mediautil-1.0和metadata-extractor-2.3.1
照片EXIF信息的读取和改写jar包带实例
metadata-extractor-2.6.4.jar EXIF,官网很难进去,用其他软件进去的,下载给大家使用
用于Java读取图像和视频的元数据,这些都是相关的jar包
MetadataExtractor是一个简单的.NET库,用于从图像,电影和音频文件中读取元数据。 安装 使用此库的最简单方法是通过其。 要么将此添加到您的项目文件 或在Visual Studio的Package Manager控制台中输入以下...
照片EXIF信息的读取和改写jar包带实例
Metadata Extractor 来读取图片的EXIF信息。目前最简单易用的EXIF信息处理的Java包,该项目最新版本2.14的依赖jar包xmpcore-6.1.8.jar。
Metadata.js是一个紧凑的,自包含的Javascript库,用于读取和写入图像元数据。 该库当前支持: JPEG和TIFF图像(包括DFF,NEF等TIFF衍生物) EXIF元数据 Photoshop / 8BIM元数据 嵌入式缩略图 嵌入式ICC配置文件 ...
读取和写入基本的 JPEG (Exif) 元数据。 安装 提供了JpegMetadata包。 要安装JpegMetadata ,请在运行以下命令: 安装包 XperiCode.JpegMetadata 用法 var adapter = new JpegMetadataAdapter ( @" d:\test.jpg " )...
// 获取ImageMetadata对象实例 ImageMetadata metadatas = Imaging.getMetadata(file); // 强转为JpegImageMetadata JpegImageMetadata jpegMetadata = ... TiffImageMetadata exif = jpegMetadata.getExif();
从图像中删除Exif,从视频中删除各种形式的GPS元数据。 目前与JPG,PNG,TIF,MOV,MP4兼容 安装 yarn add @xoi/gps-metadata-remover或npm i @xoi/gps-metadata-remover 用法 removeLocation是主要的删除功能,...
轻量级的exif图片元数据解密Exifer是一个读取JPEG / TIFF元数据的小模块。 Exif标签/字段用于将附加信息编码为数码相机拍摄的图像。 exif元信息被组织到图像中的不同图像文件目录(IFD)中。 它包含有用的信息,例如...
它使用 Phil Harvey 的 ExifTool 来读取和写入数据,并且可以从 Adobes Photoshop Elements Organizer(adobe 的商标)中获取关键字和星级。 它可以进行手动地理标记并可以从 Open Street Map 中读取位置信息。...