npm 包 wkhtmltopdf-nodejs-options-wrapper 使用教程

概述

本教程将介绍一个非常实用的 npm 包,它可以将 HTML 转换成 PDF 文件。该包为 wkhtmltopdf 的一个 Node.js 的 options 包装器。它可以让我们通过更加简单易用的方式来调用 wkhtmltopdf,同时支持多种自定义设置,比如设置 PDF 页面大小、旋转方向、页边距、页眉页脚等等。

安装

安装此包需要先在安装好 wkhtmltopdf。

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

在代码中引入依赖

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

使用说明

基础使用

最简单的使用方式是只需要传入需要转为 PDF 文件的 HTML 内容即可。

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

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

其中 options 参数支持以下属性:

  • output:设置要生成的 PDF 文件的存储路径和文件名。
  • headerHtmlfooterHtml:可以分别设置 PDF 文件的页眉和页脚。可以使用包含变量的 HTML 模板或者完整的 HTML 代码。变量可以使用位置、页数和总页数。
  • marginTopmarginBottommarginLeftmarginRight:用于调整 PDF 页的边距。
  • pageSize:设置 PDF 页面的大小,支持 A3、A4、A5、Legal、Letter、Tabloid 和自定义大小。

自定义选项

wkhtmltopdf 提供了很多自定义选项,我们可以将这些选项传递给此包以生成自定义的 PDF 文件。这些选项在 options 对象中使用以“options”开头的对象来指定。

例如,我们可以使用以下代码生成非常高质量的 PDF 文件。

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

此例中,我们使用常规的 CSS 文件添加自定义样式,同时使用了 wkhtmltopdf 特定的选项来添加页眉和页脚,处理加载错误,以及添加 cookie。该示例使用 options 对象来添加自定义选项。

事件

此包支持一些事件,我们可以利用这些事件来对 PDF 转换过程进行处理。例如,我们可以使用 progress 事件来监控 PDF 文件的转换进度,并在进度达到 50% 时打印一条消息。

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

目前支持以下事件:

  • message:在转换过程中有消息输出时触发。
  • progress:在转换过程中有进度时触发。
  • error:在转换过程中有错误时触发。

示例代码

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

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

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

总结

wkhtmltopdf-nodejs-options-wrapper 是一个非常实用的 npm 包,它可以将 HTML 内容转换为 PDF 文件。它非常易于使用,支持多种自定义设置,比如设置 PDF 页面大小、旋转方向、页边距、页眉页脚等等。此包还支持一些事件,使我们可以在转换过程中进行处理。

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


猜你喜欢

  • npm 包 worldstate 使用教程

    现在,Web 应用程序越来越复杂,需要使用许多不同的技术,从服务端框架到前端组件库。npm 是一个非常有用的工具,它允许开发人员在项目中易于获取和管理 JavaScript 依赖项。

    4 年前
  • npm 包 worldtime 使用教程

    worldtime 是一个基于 Node.js 的 npm 包,可以用于获取全球不同城市的当前时间和时区信息。本文通过介绍其使用方法,深入探讨其实现原理,以及讨论其在实际项目中的应用场景,帮助读者更深...

    4 年前
  • npm 包 worldtimestream 使用教程

    在前端项目开发中,我们经常需要处理时间戳,而且需要考虑时区和日期格式的转换等问题。在处理时间相关的操作时,我们可以使用 npm 包 worldtimestream 来节省时间和精力,使代码更加易于维护...

    4 年前
  • npm 包 worldpop 使用教程

    什么是 worldpop worldpop 是一个 npm 包,它是一个根据地理位置信息和行政区划统计人口数量的工具。它通过使用世界银行的数据来源,提供了全球各个国家、地区和行政区的人口数据。

    4 年前
  • npm 包 worldweatheronline-api 使用教程

    随着 Web 技术的不断发展,越来越多的网站或应用需要访问天气数据来提供更丰富的服务。而今天我们将要介绍的是 npm 下载量超过 2.7 万的 worldweatheronline-api 包。

    4 年前
  • npm 包 wopenssl 使用教程

    在前端开发领域,加密算法是常见的一种技术,能够保护数据的隐私性和完整性。而 OpenSSL 是一个十分流行的加密算法库,提供了多种加密和解密的算法和工具。 wopenssl 是一个基于 OpenSSL...

    4 年前
  • npm 包 woqusongpengfei 使用教程

    简介 在前端开发中,我们经常会使用各种工具和库来辅助开发。而 npm 是前端最常用的包管理器之一,提供了丰富的第三方模块供我们使用。 本文将介绍一款名为 woqusongpengfei 的 npm 包...

    4 年前
  • npm 包 word-array 使用教程

    前言 如果你是一个前端开发者,那么你一定会对于 npm 包很熟悉。npm 是前端开发中使用最广泛的包管理器之一。它不仅仅用于 JavaScript 的依赖管理,同时还可以被用于编写更加复杂的构建工具,...

    4 年前
  • npm包worldweatheronline-node-module使用教程

    简介 npm包worldweatheronline-node-module是一个基于Node.js的天气数据获取工具,通过该工具可以方便地获取世界各地的天气数据。 本文将通过详细的使用教程,并提供示例...

    4 年前
  • npm 包 worldwideweb 使用教程

    介绍 WorldwideWeb 是一个基于 Node.js 的开源工具,可以在开发中快速创建 Web 应用程序,并提供优质的开发体验。WorldwideWeb 提供了一系列的插件(plugins),可...

    4 年前
  • npm 包 wormhole-rpc 使用教程

    在前端开发中,我们经常需要通过网络请求获取数据或者调用接口。为了方便开发,npm 社区中有很多可以帮助我们完成这项任务的包。其中,wormhole-rpc 是一款非常实用的工具,它可以帮助我们快速地进...

    4 年前
  • npm 包 wormhole.js 使用教程

    概述 wormhole.js 是一款轻量级的 JavaScript 库,它可以帮助你在两个不同的 Web 页面之间传输数据。它建立在浏览器 API postMessage() 基础上,并且可以跨域传递...

    4 年前
  • npm 包 wormorm 使用教程

    一、什么是 wormorm? wormorm 是一个基于 JavaScript 的节点拖拽插件,可以帮助前端开发者轻松地实现页面元素的拖拽和排序功能。它具有以下特点: 轻量级,不依赖任何第三方库 简...

    4 年前
  • npm 包 word-cataloguer 使用教程

    简介 随着互联网的飞速发展,大量的文本数据需要处理。在前端开发中,有时候需要对一段文本进行分词、统计词频等操作,这就需要用到一些文本处理的工具。 word-cataloguer 是一个 npm 包,它...

    4 年前
  • npm 包 word-at-caret 使用教程

    在前端开发中,有时候我们需要获取光标所在位置的单词,并对其进行相关操作。这时候,一个名为“word-at-caret”的 npm 包就可以派上用场了。它可以轻松地获取光标所在单词,并且还支持跨浏览器使...

    4 年前
  • npm 包 word-clock 使用教程

    介绍 word-clock 是一个 npm 包,可以帮助我们实现一个基于文字的表盘效果,类似于下图所示: 使用 word-clock 可以让我们的网站更加独特和有趣。

    4 年前
  • npm 包 word-count-frequency 使用教程

    简介 word-count-frequency 是一款用于统计词频的 npm 包。它可以从给定的文本中统计每个单词出现的频率,并以一个对象的形式返回结果。 安装 使用此命令来安装 word-count...

    4 年前
  • npm 包 word-filter 使用教程

    在网站开发中,很多时候需要对用户输入的文本进行敏感词过滤,以避免出现违规内容。而 word-filter 是一个 npm 包,可以方便地实现敏感词过滤功能。本文将详细介绍如何使用该包,并提供示例代码。

    4 年前
  • npm 包 worona-deps 使用教程

    在前端开发中,我们常常需要使用许多不同的 npm 包来解决我们的问题。worona-deps 就是其中一个非常实用的 npm 包。它为浏览器提供了许多依赖库,包括 React、Redux、React ...

    4 年前
  • npm 包 worona-packages 使用教程

    npm(即node package manager)是一款流行的包管理器,提供了广泛的开源javascript的软件包托管服务。Worona-packages是一个专门针对wordpress的npm包...

    4 年前

相关推荐

    暂无文章