【前端】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的,直接导致捕获内容不完整

相关推荐
d***9352 小时前
springboot3.X 无法解析parameter参数问题
android·前端·后端
n***84073 小时前
十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解
前端·spring boot·后端
likuolei7 小时前
XSL-FO 软件
java·开发语言·前端·数据库
正一品程序员7 小时前
vue项目引入GoogleMap API进行网格区域圈选
前端·javascript·vue.js
j***89467 小时前
spring-boot-starter和spring-boot-starter-web的关联
前端
star_11127 小时前
Jenkins+nginx部署前端vue项目
前端·vue.js·jenkins
im_AMBER7 小时前
Canvas架构手记 05 鼠标事件监听 | 原生事件封装 | ctx 结构化对象
前端·笔记·学习·架构
JIngJaneIL7 小时前
农产品电商|基于SprinBoot+vue的农产品电商系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·毕设·农产品电商系统
Tongfront7 小时前
前端通用submit方法
开发语言·前端·javascript·react
可爱又迷人的反派角色“yang”7 小时前
LVS+Keepalived群集
linux·运维·服务器·前端·nginx·lvs