【前端】html2pdf实现用前端下载pdf

npm安装完后,编写代码。

html 复制代码
<template>
  <div id="pdf-content">
    需要被捕获为pdf的内容
  </div>
</template>

<script>
import html2pdf from 'html2pdf.js';

export default {
  methods: {
    downloadPdf() {
      const element = document.getElementById('pdf-content');
      const opt = {
      	// 转换后的pdf的外边距分别为:上: 10px、右: 10px、下: 10px、左: 10px
        margin:        [10, 10, 10, 10],
        filename:     '下载.pdf',
        image:        { type: 'jpeg', quality: 1 },
        html2canvas:  { scale: 1 },
        jsPDF:        { unit: 'mm', format: 'a4', orientation: 'portrait' }
      };
      
      // 调用html2pdf库的方法生成PDF文件并下载
      html2pdf().from(element).set(opt).save();
    },
  },
};
</script>

pdf-content这一块div展示的内容都将被捕获,成为生成的pdf页的内容。

注意,如果pdf-content使用了滚动条 ,滚动条没有滚到的部分是无法被捕获进pdf的,直接导致捕获内容不完整

相关推荐
归于尽5 分钟前
V8 引擎是如何给 JS"打扫房间"的 ?
前端·javascript
小old弟5 分钟前
让对象保持定义的顺序来排列
前端
漫天星梦5 分钟前
前端列表页大数据内存优化的思考
前端·面试
爱学习的茄子6 分钟前
从0到1:揭秘前端网络请求的进化之路
前端·javascript·面试
欢乐时光c10 分钟前
常见请求头响应头的含义
前端·面试
wzyoung11 分钟前
element-ui让el-form绑定的深层对象也能通过内置的resetFields方法重置
前端·javascript·vue.js
用户730870117930811 分钟前
使用 CSS background-blend-mode 创造惊艳的视觉效果
前端
高端章鱼哥11 分钟前
Python 项目快速部署到 Linux 服务器基础教程
前端
李剑一12 分钟前
前端使用Web Cryptography API进行内容加密,几乎无法破解
前端
搬砖码13 分钟前
优雅实现!自定义滚动刻度选择器,精准选择无压力
前端