Dependency-free Node.js module that simply removes all EXIF metadata from a single image or a set of images.
Note
This package still works on Node.js 14 through 20, but will be removed from support in a future release.
Given an image like this, which contains EXIF and other APP1 metadata:
This module will strip out the metadata from the image, with no loss in quality:
(JFIF resides within the APP0 segment of the image, which is currently out of the scope of this module)
npm install exifremoveor, if you would like to use the CLI:
npm install -g exifremove-cliExample of module usage:
const fs = require('fs');
const exifremove = require('exifremove');
const image1 = fs.readFileSync('image1.jpg');
const image2 = fs.readFileSync('image2.jpg');
// Remove just one image's Exif
let image = exifremove.remove(image1);
console.log(image); // <Buffer ff d8 ...>
// Remove multiple images' Exif
let images = exifremove.removeMultiple([image1, image2]);
console.log(images);
/*
[
<Buffer ff d8 ...>,
<Buffer ff d8 ...>
]
*/exifremove [image0] ... [imageN]
Options:
--version Show version number [boolean]
-v, --verbose Print extra messages [count]
--km, --keep-marker Keeps the APP1 marker in the JPEG [boolean]
-h, --help Show help [boolean]
Check out the CLI module's Readme for more information.