1.0.3 • Published 10 months ago
image-exif-reader v1.0.3
Image EXIF Reader
一个简单的图片 EXIF 数据读取器,支持读取 JPEG、TIFF 等格式图片的 EXIF 元数据。
功能特点
- 支持多种图片格式:JPEG/JPG、TIFF、HEIC/HEIF、PNG、WebP。
 - 读取常见 EXIF 数据:相机信息、拍摄参数、镜头信息等。
 - 简单易用的 API。
 - 支持浏览器直接使用。
 - 轻量级,无依赖。
 
快速开始
直接使用
<!-- 引入插件 -->
<script src="dist/imageExifReader.min.js"></script>
<!-- HTML -->
<input type="file" id="imageInput" accept="image/jpeg,image/jpg" />
<div id="exifData"></div>
<script>
  // 初始化读取器
  const reader = new ImageExifReader();
  // 处理文件选择
  document
    .getElementById("imageInput")
    .addEventListener("change", function (e) {
      const file = e.target.files[0];
      if (!file) return;
      reader.readExifData(file, function (error, exifData) {
        if (error) {
          console.error("读取 EXIF 数据时出错:", error);
          return;
        }
        console.log("EXIF 数据:", exifData);
      });
    });
</script>NPM 安装
npm install image-exif-readerimport ImageExifReader from "image-exif-reader";
const reader = new ImageExifReader();
function handleImageUpload(file) {
  reader.readExifData(file, (error, exifData) => {
    if (error) {
      console.error("读取失败:", error);
      return;
    }
    console.log("EXIF 数据:", exifData);
  });
}API 文档
ImageExifReader
readExifData(file, callback)
读取图片的 EXIF 数据。
参数:
- file:File - 图片文件对象。
 - callback:Function(error, exifData)
- error:Error | null - 错误信息。
 - exifData:Object - EXIF 数据对象。
 
 
返回数据示例:
{
    Make: "Panasonic",
    Model: "DC-G9",
    DateTime: "2022-03-26 18:20:19",
    ExposureTime: "1/125",
    FNumber: "f/1.7",
    FocalLength: "25mm",
    ISOSpeedRatings: 400,
    LensModel: "LUMIX G 25mm F1.7"
}支持的 EXIF 标签
基本信息
- Make:相机制造商。
 - Model:相机型号。
 - DateTime:拍摄时间。
 - Software:软件信息。
 
拍摄参数
- ExposureTime:曝光时间。
 - FNumber:光圈值。
 - ISOSpeedRatings:ISO 感光度。
 - FocalLength:焦距。
 - ExposureMode:曝光模式。
 - WhiteBalance:白平衡。
 
镜头信息
- LensModel:镜头型号。
 - LensSerialNumber:镜头序列号。
 - FocalLengthIn35mmFilm:35mm 等效焦距。
 
图像信息
- XResolution:X 轴分辨率。
 - YResolution:Y 轴分辨率。
 - ResolutionUnit:分辨率单位。
 
开发
# 安装依赖
npm install
# 构建项目
npm run build
# 运行示例
npm run dev
# 运行测试
npm test示例
查看 examples 目录中的完整示例代码。
浏览器兼容性
- Chrome 50+
 - Firefox 50+
 - Safari 11+
 - Edge 18+
 
许可证
MIT
作者
zhengice
贡献
欢迎提交 Issue 和 Pull Request。
更新日志
1.0.0
- 初始版本发布。
 - 支持 JPEG/TIFF 格式。
 - 基础 EXIF 数据读取。