[英]how to store image from buffer to file system in node.js using sharp.js
我在 node.js 中使用sharp.js 进行图像处理
我的代码
sharp(path)
.toFormat('jpeg')
.toBuffer((err, data, info) => {
fs.writeFile(temp, buffer, { flag: 'w' }, function() {
response.sendFile(temp);
});
});
这里 fs 中的 temp 表示“路径” var temp= imageDir + request.params.id;
( http://localhost:2000/images/we.png )
将图像上传为 png 格式或任何其他格式
使用.toFormat('jpeg')
将该图像转换为JPEG
并发送到缓冲区
您的代码没有“缓冲区”。 你应该写数据。
.toBuffer((err, data, info) => {
fs.writeFile(temp, data, { flag: 'w' }, function() {
response.sendFile(temp);
});
});
但最好使用 toFile 而不是 toBuffer:
sharp('originalFile.jpg').
resize(330,null).
flatten().
toFile('newFile.jpg', function(err){
if(err){
response.sendStatus(500);
return;
}
response.sendFile('newFile.jpg');
});
你可以这样做
sharp(req.files[0].path).resize(400, 200).toFile('uploads/' + 'thumbnail-' + req.files[0].originalname, (err, sharp) => {
if (err) {
console.error(err);
}
else {
console.log(sharp);
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.