npm 包 gulp-unimage 使用教程

简介

gulp-unimage 是一个用于压缩图片的 gulp 插件,它能够将项目中使用的图片进行压缩并生成相应的 WebP 格式,从而提高网页的加载速度。

安装

要使用 gulp-unimage,首先需安装 gulp 和 gulp-unimage。

在命令行中输入以下命令进行安装:

--- ------- ---- ------------ ----------

使用方法

压缩图片

在 gulpfile.js 中定义以下任务:

----- ---- - ----------------
----- ------- - ------------------------

-------------------- -- -- -
  ------ ---------------------------
    ----------------
    ----------------------------------
---

这个任务会将 images 文件夹中的图片进行压缩,并输出到 dist/images 文件夹中。

生成 WebP 格式

在 gulpfile.js 中定义以下任务:

----- ---- - ----------------
----- ------- - ------------------------

------------------------- -- -- -
  ------ ---------------------------
    ---------------
      ----- ----
    ---
    ----------------------------------
---

这个任务会将 images 文件夹中的图片进行压缩,并生成相应的 WebP 格式图片,输出到 dist/images 文件夹中。

压缩指定格式的图片

在 gulpfile.js 中定义以下任务:

----- ---- - ----------------
----- ------- - ------------------------

------------------------ -- -- -
  ------ -----------------------------
    ----------------
    ----------------------------------
---

这个任务会将 images 文件夹中的 png 格式图片进行压缩,并输出到 dist/images 文件夹中。

参数说明

unimage

参数名 类型 描述
quality number or Object 图片压缩质量,默认值为 80。
maxConcurrency number 最大并发数,默认值为 os.cpus().length - 1。
webp boolean 是否使用 WebP 格式,默认值为 false。
webpQuality number WebP 压缩质量,默认值为 75。
webpMaxQuality number WebP 压缩最大质量,默认值为 100。
webpMinQuality number WebP 压缩最小质量,默认值为 0。
webpLossless boolean 是否启用 WebP 无损模式,默认值为 false。
webpNearLossless boolean 是否启用 WebP 接近无损模式,默认值为 false。
webpAlphaQuality number WebP 压缩透明 png 图片时的质量,默认值为 100。
webpAlphaMaxQuality number WebP 压缩透明 png 图片时的最大质量,默认值为 100。
webpAlphaMinQuality number WebP 压缩透明 png 图片时的最小质量,默认值为 0。
webpAlphaMethod number WebP 压缩透明 png 图片时的压缩方法,默认值为 0。

学习与指导意义

gulp-unimage 插件可以帮助前端开发人员快速地将网站图片进行压缩,从而提高网页的加载速度,减少用户等待时间,提高用户体验。同时,通过学习该插件的使用方法和参数说明,可以了解到压缩图片的常用方法和技巧,对于图片压缩和优化有一定帮助作用。

示例代码

在本地环境中创建一个名为 test 的文件夹,进入 test 文件夹后执行以下命令:

--- ---- --
--- ------- ---- ------------ ----------

在 test 文件夹下创建一个名为 gulpfile.js 的文件,输入以下示例代码:

----- ---- - ----------------
----- ------- - ------------------------

-------------------- -- -- -
  ------ ---------------------------
    ---------------
      -------- ---
      --------------- --
      ----- -----
      ------------ ---
      ----------------- --
    ---
    ----------------------------------
---

------------------------ -- -- -
  ------ -----------------------------
    ---------------
      -------- ----- --- ---- ----
      --------------- -
    ---
    ----------------------------------
---

------------------------- -- -- -
  ------ -----------------------------------
    ---------------
      ----- -----
      ------------- -----
      ----------------- --
    ---
    ----------------------------------
---

-------------------- ------------------------ -------------- -----------------

在 test 文件夹下创建一个名为 images 的文件夹,将一些图片放入该文件夹中。

在命令行中进入 test 文件夹后输入以下命令:

----

以上命令会执行 gulpfile.js 中定义的压缩任务,将 images 中的图片进行压缩,输出到 dist/images 中。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005591e81e8991b448d6913


猜你喜欢

  • npm 包 ultraregistro-admin 使用教程

    介绍 ultraregistro-admin 是一款基于 Vue.js 的前端组件库,其中包含了多种常用的 UI 组件,如按钮、表单、下拉菜单、警告框等,可以有效地提升前端开发的效率,具有很好的学习和...

    2 年前
  • npm 包 npm-package-boilerplate 使用教程

    前言 在日常的前端开发中,使用大量的 npm 包来解决各种各样的问题。但是,如果你是一个 npm 包的作者,你会发现开发一个可供其他人使用的 npm 包并不是一件容易的事情。

    2 年前
  • npm包opencadc-votable-filter-engine使用教程

    简介 opencadc-votable-filter-engine是一个用于JavaScript操作VOTable的过滤引擎。它提供了一组简单而又强大的API,使得用户可以轻松地自定义VOTable的...

    2 年前
  • npm 包 es-base64 使用教程

    在前端开发中,我们经常会涉及到数据的编码和解码,其中 base64 是一种常用而重要的编码方式。NPM 上有许多与 base64 编码相关的包,es-base64 是其中一款。

    2 年前
  • npm 包 services-cluster 使用教程

    随着云原生时代的到来,分布式应用开发变得越来越流行。在分布式应用开发中,服务发现以及服务治理一直是一个很大的挑战。npm 包 services-cluster 提供了一种简洁有效的解决方案,使得我们能...

    2 年前
  • npm 包 opencadc-votable 使用教程

    前言 opencadc-votable 是一个基于 Node.js 的 npm 包,可以方便地处理 VO 数据格式。在前端的一些大规模数据处理需求中,使用 opencadc-votable 是比较常见...

    2 年前
  • npm 包 jiazeliang 使用教程

    什么是 jiazeliang? jiazeliang 是一个基于 Vue.js 框架的前端 UI 组件库,其中包含了丰富的组件和样式以满足不同的需求。jiazeliang 的特点是轻量、易用和高度可定...

    2 年前
  • npm 包 swfobject-constructor 使用教程

    前言 swfobject-constructor 是一款专门用于创建 Flash 对象的 npm 包。对于需要在项目中使用 Flash 的前端开发者来说,这是一款非常实用的工具。

    2 年前
  • npm 包 fonts-raleway 使用教程

    在网页设计中,字体选择是一个很重要的环节。每种字体都有自己的特点,不同的字体能给人带来不同的感受体验。在前端开发中,我们可以通过引入不同的字体,使网页更加美观和易读。

    2 年前
  • npm 包 framify.js 使用教程

    介绍 Framify.js 是一个优秀的前端开发库,主要用于快速创建响应式布局的应用程序。它包括了一系列的组件和工具,可以大大提高前端开发的效率。 Framify.js 是一个 npm 包,可以通过命...

    2 年前
  • npm 包 xchat_public_platform 使用教程

    简介 xchat_public_platform 是一款用于在 web 端实现微信公众号关键应用的 npm 包。 使用该包,可以通过简单的 API 调用实现微信公众号的一些基本功能,例如发送消息、获取...

    2 年前
  • npm 包 prepack-loader 使用教程

    在前端开发中,我们经常需要使用 webpack 对我们的代码进行打包和优化。而 npm 包 prepack-loader 可以帮助我们进一步加速应用,提高用户体验。

    2 年前
  • npm 包 uservoice-nodejs-null 使用教程

    简介 在前端开发中,用户反馈是一个十分重要的环节。uservoice-nodejs-null 是一个 npm 包,提供了与 UserVoice 进行交互的功能。本文将介绍如何使用 uservoice-...

    2 年前
  • npm 包 angular2-swiper-gg 使用教程

    简介 angular2-swiper-gg 是一个基于 Angular2 的 Swiper.js 组件库,提供了丰富的滑动展示功能,并简化了组件的实现和配置过程。本文将详细介绍如何使用此 npm 包,...

    2 年前
  • npm 包 @nwaltham/venn.js 使用教程

    @nwaltham/venn.js 是一个强大的 JavaScript 库,用于创建维恩图,它可以将多个数据集之间的重叠程度可视化。在本篇文章中,我们将详细了解如何使用该库。

    2 年前
  • npm 包 cdk-components 使用教程

    前言 在前端开发中,我们经常需要使用一些 UI 组件,在自己搭建 UI 时,我们不希望从头开始自己实现组件,而是使用现有的成熟组件库。此时,npm 包成为了我们不可或缺的工具之一。

    2 年前
  • npm 包 @nwaltham/fmin 使用教程

    简介 @nwaltham/fmin 是一个 JavaScript 函数最小化库,它可以帮助你将复杂的函数压缩成简单的形式,以便在计算量大的场景中提高性能。本教程将介绍 @nwaltham/fmin 的...

    2 年前
  • npm 包 redux-middleware-injector 使用教程

    在前端开发中,状态管理是一个非常重要的话题。Redux 是一个非常流行的状态管理库,它提供了一种极简、可预测的状态管理方案。同时,Redux 的可扩展性也非常强,允许开发者自定义中间件,以扩展 Red...

    2 年前
  • npm 包 ol3-draw-features 使用教程

    简介 OpenLayers 3 是一个强大的开源 Web 映射库,可用于构建交互式地图应用程序。npm 包 ol3-draw-features 扩展了 OpenLayers 3 的绘图功能,使用户能够...

    2 年前
  • npm 包 hamal-yunbi 使用教程

    简介 npm 包 hamal-yunbi 是一款前端编程中常用的工具包,包含了一些实用的函数和组件,使得开发者可以更加高效地完成各种前端任务。 本文将介绍如何使用 hamal-yunbi 这个 npm...

    2 年前

相关推荐

    暂无文章