我正在使用主体解析器模块以mutli-part/form-data
的形式在Node-Express中接收数据。它以原始图像二进制文件的形式下降,我想将其传递给sharp.js,以便我可以更改大小并将其存储在云中。
问题是我必须将图像的高度和宽度传递给锐度,否则它将不知道如何处理我的文件。
如何获取图像的高度和宽度?
exports.upload = (req, res) => {
let divisor = 1
// how do I get the height and width?
const image = sharp(req.body)
return image.metadata()
.then(function({height, width, format}) {
if (width > 300 || height> 300) {
divisor = width > height ? width / 300 : height / 300
}
return image
.resize(Math.round(width / divisor), Math.round(height / divisor))
.toBuffer();
})
.then(function(data) {
// send to the cloud
})
}