Node.js - 将 webp 转换为 jpeg 作为缓冲区(在内存中)

Luk*_*vka 5 jpeg converters node.js webp

你知道有什么方法可以将image/webp缓冲区转换为image/jpeg缓冲区而不需要使用文件系统吗?

首先我得到缓冲区,request-promise然后我想转换它并在另一个 HTTP 调用中发送它。

我发现这个包适用于文件:https : //github.com/scionoftech/webp-converter

然后试图在https://github.com/imagemin/imagemin 中找到一些有用的东西, 但没有成功。

Asi*_*Rex 1

您可以使用ImageMagick 中的转换功能来执行此操作,通过GraphicsMagick NPM 包使用它。它接受 webp 压缩的 TIFF,您可以将其输出为 jpg。当您安装 GraphicsMagick 时,请确保还包括 ImageMagick 并使用--with-webp标志安装它,以便支持 webp。当需要 gm lib 时,请确保还指定 imageMagick:

 const gm = require('gm').subClass({imageMagick: true});
Run Code Online (Sandbox Code Playgroud)

在您的承诺正文中,您可以调用如下函数:

gm().command('convert').in('yourImage.jpg').in('yourImage.webp').toBuffer(function(err, buffer){
if(err)throw err
//...Do what you need with the buffer
});
Run Code Online (Sandbox Code Playgroud)

  • 如何使用普通的“Buffer”来做到这一点,而不需要使用“yourImage.jpg”和“yourImage.webp”文件? (3认同)