目录
前言具体使用1、手机打开相应功能,拍照时开启定位2、运行exif.html3、根据提示上传图片,获取信息4、GPS信息获取
代码 exif.html
前言
插件:Exif.js 插件文档:http://code.ciaoca.com/javascript/exif-js/ 简介:可交换图像文件格式(英语:Exchangeable image file format,官方简称Exif),是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据。
具体使用
1、手机打开相应功能,拍照时开启定位
以小米10为例。打开相机,进入设置。 打开 “保存地理位置信息”的功能,这个功能默认是开启的 然后拍照,原图传到电脑!!!(原图!!!)
2、运行exif.html
复制代码,写入exif.html文件中 效果如下:(ps:因为插件用的在线加载,所以要确保能够正常上网) ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210611161838299.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0lrYXJvc181MjE=,size_16,color_FFFFFF,t_70)
3、根据提示上传图片,获取信息
具体信息含义可以往下翻页查看 图片转自官方文档 http://code.ciaoca.com/javascript/exif-js/ ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210611162327536.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0lrYXJvc181MjE=,size_16,color_FFFFFF,t_70)
4、GPS信息获取
经纬度的3个值分别是度分秒 转为度的换算公式为 度 + 分/60 + 秒/3600 然后网上找个经纬度转地址的网站,例http://www.toolzl.com/tools/gps.html ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210611164156465.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0lrYXJvc181MjE=,size_16,color_FFFFFF,t_70)
代码 exif.html
DOCTYPE html>
exif demo
#img {
height: 500px;
width: 500px;
}
使用方式,选择图片文件,图片预览图会显示在下方。点击“获取数据”,EXIF信息则会显示在文本区域内。具体信息含义可以参考下方的说明。
exif.js官方文档
获取数据
EXIF 标识 —— 转自官方文档
名称
说明
ExifVersion
Exif 版本
FlashPixVersion
FlashPix 版本
ColorSpace
色域、色彩空间
PixelXDimension
图像的有效宽度
PixelYDimension
图像的有效高度
ComponentsConfiguration
图像构造
CompressedBitsPerPixel
压缩时每像素色彩位
MakerNote
制造商设置的信息
UserComment
用户评论
RelatedSoundFile
关联的声音文件
DateTimeOriginal
创建时间
DateTimeDigitized
数字化创建时间
SubsecTime
日期时间(秒)
SubsecTimeOriginal
原始日期时间(秒)
SubsecTimeDigitized
原始日期时间数字化(秒)
ExposureTime
曝光时间
FNumber
光圈值
ExposureProgram
曝光程序
SpectralSensitivity
光谱灵敏度
ISOSpeedRatings
感光度
OECF
光电转换功能
ShutterSpeedValue
快门速度
ApertureValue
镜头光圈
BrightnessValue
亮度
ExposureBiasValue
曝光补偿
MaxApertureValue
最大光圈
SubjectDistance
物距
MeteringMode
测光方式
Lightsource
光源
Flash
闪光灯
SubjectArea
主体区域
FocalLength
焦距
FlashEnergy
闪光灯强度
SpatialFrequencyResponse
空间频率反应
FocalPlaneXResolution
焦距平面X轴解析度
FocalPlaneYResolution
焦距平面Y轴解析度
FocalPlaneResolutionUnit
焦距平面解析度单位
SubjectLocation
主体位置
ExposureIndex
曝光指数
SensingMethod
图像传感器类型
FileSource
源文件
SceneType
场景类型(1 == 直接拍摄)
CFAPattern
CFA 模式
CustomRendered
自定义图像处理
ExposureMode
曝光模式
WhiteBalance
白平衡(1 == 自动,2 == 手动)
DigitalZoomRation
数字变焦
FocalLengthIn35mmFilm
35毫米胶片焦距
SceneCaptureType
场景拍摄类型
GainControl
场景控制
Contrast
对比度
Saturation
饱和度
Sharpness
锐度
DeviceSettingDescription
设备设定描述
SubjectDistanceRange
主体距离范围
InteroperabilityIFDPointer
ImageUniqueID
图像唯一ID
Tiff 相关
名称
说明
ImageWidth
图像宽度
ImageHeight
图像高度
BitsPerSample
比特采样率
Compression
压缩方法
PhotometricInterpretation
像素合成
Orientation
拍摄方向
SamplesPerPixel
像素数
PlanarConfiguration
数据排列
YCbCrSubSampling
色相抽样比率
YCbCrPositioning
色相配置
XResolution
X方向分辨率
YResolution
Y方向分辨率
ResolutionUnit
分辨率单位
StripOffsets
图像资料位置
RowsPerStrip
每带行数
StripByteCounts
每压缩带比特数
JPEGInterchangeFormat
JPEG SOI 偏移量
JPEGInterchangeFormatLength
JPEG 比特数
TransferFunction
转移功能
WhitePoint
白点色度
PrimaryChromaticities
主要色度
YCbCrCoefficients
颜色空间转换矩阵系数
ReferenceBlackWhite
黑白参照值
DateTime
日期和时间
ImageDescription
图像描述、来源
Make
生产者
Model
型号
Software
软件
Artist
作者
Copyright
版权信息
GPS 相关
名称
说明
GPSVersionID
GPS 版本
GPSLatitudeRef
南北纬
GPSLatitude
纬度
GPSLongitudeRef
东西经
GPSLongitude
经度
GPSAltitudeRef
海拔参照值
GPSAltitude
海拔
GPSTimeStamp
GPS 时间戳
GPSSatellites
测量的卫星
GPSStatus
接收器状态
GPSMeasureMode
测量模式
GPSDOP
测量精度
GPSSpeedRef
速度单位
GPSSpeed
GPS 接收器速度
GPSTrackRef
移动方位参照
GPSTrack
移动方位
GPSImgDirectionRef
图像方位参照
GPSImgDirection
图像方位
GPSMapDatum
地理测量资料
GPSDestLatitudeRef
目标纬度参照
GPSDestLatitude
目标纬度
GPSDestLongitudeRef
目标经度参照
GPSDestLongitude
目标经度
GPSDestBearingRef
目标方位参照
GPSDestBearing
目标方位
GPSDestDistanceRef
目标距离参照
GPSDestDistance
目标距离
GPSProcessingMethod
GPS 处理方法名
GPSAreaInformation
GPS 区功能变数名
GPSDateStamp
GPS 日期
GPSDifferential
GPS 修正
function getExifInfo() {
console.log("执行...");
EXIF.getData(document.getElementById('img'), function () {
document.getElementById('dataArea').innerText = JSON.stringify(EXIF.getAllTags(this), null, "\t");
console.log(JSON.stringify(EXIF.getAllTags(this), null, "\t"));
});
}
// 参考:https://blog.csdn.net/qq_38789941/article/details/95309081
document.querySelector('#imgInput').onchange = function () {
if (this.files.length) {
let file = this.files[0];
let reader = new FileReader();
//新建 FileReader 对象
reader.onload = function () {
// 当 FileReader 读取文件时候,读取的结果会放在 FileReader.result 属性中
document.querySelector('#img').src = this.result;
//document.querySelector('#text').innerHTML = this.result;
};
// 设置以什么方式读取文件,这里以base64方式
reader.readAsDataURL(file);
}
}
|