您可以使用库 piexifjs 来更改图像的 EXIF 数据。该库只更改元数据(称为 EXIF) ,而不更改图像本身。
使用piexifjs相关 API 读取图像的 EXIF 数据,更改并创建新的buffer 。
const piexif = require("piexifjs");
// get the image buffer from puppeteer or from disk
const imageBuffer = /* ... */
// convert buffer to string and load it
const imageString = imageBuffer.toString('binary');
const exif = piexif.load(imageString);
// change resolution
exif['0th'][piexif.ImageIFD.XResolution] = [300,1];
exif['0th'][piexif.ImageIFD.YResolution] = [300,1];
// generate new EXIF data
const newExifDump = piexif.dump(exif);
// generate new image
const newData = piexif.insert(newExifDump, imageString);
const jpgBuffer = new Buffer(newData, "binary");
// write to file or use buffer
// ...
以上是改变了dpi信息,当然也可改变其他的图片信息,具体可以查看 piexifjs 的git仓库;
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。