在Nodejs中将base64 png转换为jpeg图像

Abh*_*nav 3 javascript image node.js fabricjs node-canvas

我在Nodejs 中使用FabricJS模块。我正在尝试导出一个画布,但它不会(给我带来了困难)。我得到的只是base64 png数据。jpeg

开始的数据像

data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAYAAADL1t.....
Run Code Online (Sandbox Code Playgroud)

无论如何在nodejs中我可以将此图像转换为jpeg?我用谷歌搜索了很多,但找不到解决方案

Bul*_*ral 5

您可以使用png-to-jpeg模块。假设“数据”是字符串形式:

const fs = require("fs");

const pngToJpeg = require('png-to-jpeg');
const imgStr = 'data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAYAAADL1t.....';

const buffer = new Buffer(imgStr.split(/,\s*/)[1],'base64');
pngToJpeg({quality: 90})(buffer).then(output => fs.writeFileSync("./some-file.jpeg", output));
Run Code Online (Sandbox Code Playgroud)