An npm package to parse EXIF data from images with a simple to use interface and minimal dependencies (currently only works with JPEG images)
Getting Started
Install
using npm
npm install --save image-meta-js
Usage
The constructor expects a DataView to be passed in, DataViews can be created from ArrayBuffers that can be fetched from files many ways. For example allows running using the Node 'fs' package or FileReader in the web browser
let imageMeta = imageDataViewlet data = imageMetadata; // returns object of all found data // e.g. get exposure triangledataFNumber // 2.8dataExposureTime // 1/100dataISO // 800
Node:
file = fs;let imageArrayBuffer = filebufferlet imageDataView = imageArrayBuffer;let imageMeta = imageDataView
Browser:
let reader = ;reader { let imageArrayBuffer = readerresult; let imageDataView = imageArrayBuffer; let imageMeta = imageDataView;}reader;
The full possible tag list can be found here
Tests
Tests using Mocha and automated on commits using Travis-CI They are simple tests using images with known values and ensuring that the format handling is working as expected
License
This project is licensed under the MIT License
Useful Resources
- Image format resource - Breaks down the image binary into sections
- All possible tags resource - Lists all tags according to the spec and their types
- Sample images - sample images with some very specific data such as MakerNote section or GPS tags, useful for testing