使用Node.js实现base64和png文件相互转换的方法
时间: 2024-09-24 12:27:07 浏览: 54
在Node.js中实现Base64编码和PNG文件之间的转换,通常需要借助第三方库,例如`pngjs`用于读写PNG文件,以及`buffer`库处理Base64编码的数据。这里是一个简单的例子:
**从PNG转Base64**
```javascript
const fs = require('fs');
const PNG = require('pngjs');
async function pngToBase64(filePath) {
const png = new PNG(fs.readFileSync(filePath));
let buffer = png.pack().toString('base64');
return buffer;
}
// 使用示例
(async () => {
try {
const base64String = await pngToBase64('input.png');
console.log('PNG to Base64:', base64String);
} catch (error) {
console.error('Error:', error);
}
})();
```
**从Base64转PNG**
```javascript
const fs = require('fs');
const parseBase64 = require('parse-base64-file');
function base64ToPng(base64String, outputPath) {
const binaryData = Buffer.from(base64String, 'base64');
parseBase64(binaryData).pipe(fs.createWriteStream(outputPath));
}
// 使用示例
base64ToPng('your_base64_string_here', 'output.png');
```
注意,上述代码仅供参考,实际使用时可能需要处理错误和其他边界情况。