node.js - 无法使用 imagemin-webp 将图像转换为 WebP

标签 node.js webp imagemin

我正在尝试使用 imagemin-webp 而不是使用 将多个 PNG 和 JPG 文件转换为 WebP cwebp 一次转换一个,但由于某种原因它不起作用。

到目前为止我所做的一切:

1- 我安装了 Node JS v10.16.0 ;

2- 在我的项目中,我使用以下命令创建了 package.json 文件:npm init -y ;

3- 仍在我的项目目录中,我运行了命令 npm install imagemin imagemin-webp ;

4- 然后我创建了一个 webp.js 来保存应该转换图像的代码,然后我用 node webp.js 执行它命令。

以下是 webp.js 中的代码:

const imageminWebp = require('imagemin-webp');

imagemin(['_imgs/*.{jpg,png}'], '_imgs', {
   use: [
        imageminWebp({quality: 50})
    ]
}).then(() => {
    console.log('Images optimized');
});

我以为一旦执行,_imgs 文件夹中的所有文件都会转换为 webp,但是当我查看文件夹时,那里只有 PNG 和 JPG 文件。

当我运行该代码时,我收到消息“优化图像”,但尽管如此,WebP 图像并未生成。

还有什么我需要做的才能让它工作吗?

最佳答案

同样的问题在这里

试试这个:

const imagemin = require('imagemin');
const imageminWebp = require('imagemin-webp');

imagemin(['images/*.{jpg,png}'], {
  destination: __dirname + '/images/converted/',
  plugins: [
    imageminWebp({
      quality: 75,
      resize: {
        width: 1000,
        height: 0
      }
    })
  ]
}).then(() => {
  console.log('Images optimized');
});

当然,您可以省略调整大小部分;
如果调整大小参数的一部分为 0,则使用原始比例(对于 2:3 图像,如果输入 1000,则为 1000x1500);

我仍然不知道如何转换单个图像......尽管每周在 npm 上的下载量超过 30 万次,但这是非常神秘的并且没有很好的记录;

关于node.js - 无法使用 imagemin-webp 将图像转换为 WebP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56941110/

相关文章:

javascript - 为 promise 链导出 Express 路由方法的最佳方式?

javascript - CentOS 上的 Node.js imagemin

gulp - 为什么新添加的文件不会触发我的“大吃一惊”任务?

image - 如何将 WebP 插件安装到 Photoshop Creative Cloud 中?

c# - C# 的 WebP 库

javascript - imagemin 错误 [TypeError : (input, 输出,选择)=> {

node.js - Electron 应用程序中的事件发射器内存泄漏

node.js - NodeGit如何获取另一个分支的最后提交ID?

Javascript/Node 和计时

c# - 带有 C# ImageFormat 类的 WebP 图像