我可以使用node-gm在内存中调整图像的大小,还是我需要先保存它
Can I use node-gm to resize an image in memory or do I need to save it first?
我允许用户上传头像,但我想在上传时调整它们的大小。现在,gm似乎让我在调整文件大小之前先将文件保存到磁盘上。是否有可能在传入请求时调整它的大小?
像这样:
var readStream = fs.createReadStream(req.files['profile-picture']['path']);
gm(req.files['profile-picture']['path'], 'img.jpg')
.write('/path/to/directory/img.jpg', function (err) {
if (!err) console.log('done');
});
你可以通过gm管道传输流,而不需要将文件保存到磁盘上!你甚至可以一个接一个地做几个操作,因为gm函数是可链接的(在我的例子中,我调整了图像的大小,然后从中间裁剪它(因此重力函数)
gm(req.files['profile-picture']['path'], 'img.jpg')
.resize("100^", "100^")
.gravity('Center')
.crop(100, 100)
.stream(function (err, stdout, stderr) {
// do whatever you want with your output stream (stdout) here
});
相关文章:
- node-webkit:将数据导出到csv并提示用户保存文件
- 将req.query['name']的值保存到Node.jS中的一个变量中
- 是否可以使用node.js从powerpoint中提取幻灯片并将其保存为图像
- 无法在Node.JS中保存变量
- 将画布保存到 Node-webkit 中的磁盘
- node.js相当于标准的PHP ajax保存方案
- MongoDB 和 Node.js:将 int32 保存为 double
- 如何将存储的javascript从node.js保存到mongodb中
- 在 Node.js 中保存 XML 文件
- Node & Express + jQuery:在对会话保存进行身份验证后
- 如何在 Node.js 中使用 multer 将文件保存在项目文件夹中
- 将PDF文件从Node.js服务器保存到PhoneGap应用程序
- 无法使用node.js和请求保存远程映像
- Node.js:错误:使用GM模块时生成ENOENT
- 我可以使用node-gm在内存中调整图像的大小,还是我需要先保存它
- 在mongodb中使用node gm (graphic magic)保存镜像文件
- 使用Node / gm将SVG字符串转换为PNG输出
- 使用mongodb保存node.js的异步特性的多个数据
- 我需要在windows 8中保存Node.js的javascript文件
- 处理和保存node.js/express会话