npm 包 @bastienmoulia/pdf.js-dist 使用教程

介绍

PDF.js 是 Mozilla 开发的一个开源 PDF 解析与渲染的 JavaScript 库。它可以将 PDF 文件渲染成 HTML5 Canvas 或 SVG,从而在浏览器中实现显示 PDF 文件的功能。

@bastienmoulia/pdf.js-dist 是 PDF.js 的一个已打包好的 npm 包,方便我们在项目中使用。

安装

可以通过 npm 安装该包:

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

使用

引入

在需要使用的地方引入包:

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

加载 PDF 文件

使用 pdfjsLib.getDocument() 方法加载 PDF 文件,参数为 PDF 文件的 URL 或 ArrayBuffer。

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

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

获取 PDF 页面

在加载成功后,使用 pdfDoc.getPage() 方法获取 PDF 页面,参数为页面序号,从 1 开始。返回值为一个 Promise,能够获取一个 PDFPage 对象。

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

渲染 PDF 页面

在获取 PDF 页面成功后,使用 pdfPage.render() 方法渲染页面,参数为一个对象,用于配置渲染的选项。返回值为一个 Promise,用于获取渲染好的对象。

下面是一个简单的示例代码:

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

其中,canvas 为一个 HTML5 Canvas 对象,viewport 为一个 PDFPage 对象的属性,用于配置渲染的尺寸和缩放比例,如下:

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

完整示例代码

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

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

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

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

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

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

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

总结

本文详细介绍了如何使用 @bastienmoulia/pdf.js-dist 这个 npm 包来加载、解析和渲染 PDF 文件。希望本文能够对你有所帮助,并且能够在实际开发中得到应用和拓展。

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


猜你喜欢

  • npm 包 jquery.gmapping 使用教程

    在前端开发中,很多时候需要在地图上展示一些信息。而要实现这样的功能,就需要使用一些专业的地图库。其中,jQuery Gmaping 就是一个非常优秀的地图库,它可以轻松地在网站中嵌入 Google 地...

    3 年前
  • npm 包 jest-single-file-coverage 使用教程

    在前端开发中,单元测试非常重要。而在单元测试中,测试覆盖率评估也是非常关键的一环。jest-single-file-coverage 是一个可以对单个文件进行测试覆盖率评估的 npm 包,本文将介绍它...

    3 年前
  • npm 包 node-trademark 使用教程

    简介 在前端开发中,难免需要使用一些第三方库来辅助开发工作。npm (Node Package Manager) 是一个很好的选择。本文将介绍 npm 包 node-trademark 的使用方法。

    3 年前
  • NPM 包:React Native Loading Cat 使用教程

    React Native Loading Cat 是一款非常实用的 npm 包,它可以让我们在 React Native 应用中使用动画加载图标并增强用户体验。在本文中,我们将介绍如何安装和使用 Re...

    3 年前
  • npm 包 2017-8-28 使用教程

    前言 npm 是一个基于 Node.js 的包管理器,它允许开发者分享和重用代码。npm 包是一种标准的方式来组织和分享 JavaScript 代码。在前端开发过程中,使用 npm 包可以极大的提高开...

    3 年前
  • npm 包 hexo-light-gallery 使用教程

    npm 包 hexo-light-gallery 使用教程 hexo-light-gallery是一个方便易用的Hexo网站图片展示插件,它提供了简单的配置和美观的展示效果。

    3 年前
  • npm 包 express-process-manager 使用教程

    简介 express-process-manager 是一个 Node.js 的进程管理器,可用于在 Express 应用程序中管理子进程。 在 Node.js 中,子进程创建和管理是一项极其重要的任...

    3 年前
  • npm 包 aor-epilogue-client 使用教程

    在现代的前端开发中,npm 包管理系统扮演着至关重要的角色。其中,aor-epilogue-client 是一款非常有用的 npm 包,它可以帮助我们快速地搭建起一个完整的 React 后台管理系统。

    3 年前
  • npm 包 cat-time-tracker 使用教程

    在前端开发中,我们常常需要记录代码的执行时间等信息,以便于优化代码及提升用户体验。此时,npm 包 cat-time-tracker 可以大大地帮助我们,让我们能够轻松地记录代码的执行时间、消耗时间等...

    3 年前
  • npm 包 microless 使用教程

    前言 随着前端技术的迅猛发展,前端工程化已经成为了前端开发不可避免的一个问题。而 npm 包作为前端工程化必不可少的一部分,更是前端开发必须了解和掌握的知识之一。在 npm 上发布和维护自己的 npm...

    3 年前
  • npm 包 redux-saga-timer 使用教程

    redux-saga-timer 是一个用于在 Redux-Saga 中执行定时器任务的库。这个包提供了一种简单的方式来在应用程序中控制时间,从而能够将异步任务与定时器任务进行结合。

    3 年前
  • npm 包 chromeless-instagram 使用教程

    前言 chromeless-instagram 是一个基于 Node.js 的 npm 包,用于爬取 Instagram 的数据和图片。这个包使用了无头浏览器 Chromeless,并且实现了一个简单...

    3 年前
  • npm 包 delay-keyup 使用教程

    delay-keyup 是一款适用于前端开发的 npm 包,它可以延迟触发按键事件,并在延时结束后执行回调函数,从而提高用户体验。在本篇文章中,我们将介绍该 npm 包的安装、使用以及它的一些常见用法...

    3 年前
  • npm 包 dva-tools 使用教程

    概述 dva-tools 是一个基于 dva 的工具包,专门用于简化和优化 dva 应用程序的开发流程。它包含了一系列的工具和插件,可快速搭建基础应用程序,并提供了一些便捷的操作方式,使得使用 dva...

    3 年前
  • npm 包 express2md 使用教程

    介绍 Express2md 是一个用于将 Express API 转换为 Markdown 格式的 npm 包。它可以帮助前端开发者更方便地阅读和理解 Express API 文档。

    3 年前
  • npm 包 resaga-config 使用教程

    概述 在前端开发中,我们常常会使用 Redux 和 Redux-Saga 这两个库来处理应用程序的状态管理和异步操作。但是,配置 Redux 和 Redux-Saga 通常需要编写大量的重复代码。

    3 年前
  • npm 包 rx-lokka 使用教程

    什么是 rx-lokka rx-lokka 是一个基于 rxjs 的 Lokka 客户端的库。Lokka 是一个简单且通用的 GraphQL 客户端,它支持多种传输方式,如 HTTP、WebSocke...

    3 年前
  • npm 包 gulp-ahex 使用教程

    前言 在前端领域,自动化构建是必不可少的环节。而自动化构建的工具中,gulp 是一款流行的工具。它是基于 Node.js 构建的,通过编写 gulpfile.js 文件来定义任务,实现前端代码的自动化...

    3 年前
  • npm 包 web-voice-search 使用教程

    在现代 Web 应用程序中,语音搜索功能已经变得越来越普遍,正是因为语音技术的发展和用户对语音搜索方式的接受度增加。不过,为了让浏览器支持语音搜索,我们需要使用一些特定 API,这些 API 并不是在...

    3 年前
  • npm 包 http-logs 使用教程

    在前端开发中,处理网络请求是无法避免的一个环节。为了更好地了解和调试网络请求,我们常常需要记录请求和响应的信息。http-logs 就是一个非常方便的 npm 包,它可以帮助我们记录 HTTP 请求和...

    3 年前

相关推荐

    暂无文章