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

相关推荐
街尾杂货店&10 小时前
css - 实现三角形 div 容器,用css画一个三角形(提供示例源码)简单粗暴几行代码搞定!
前端·css
顺凡10 小时前
删一个却少俩:Antd Tag 多节点同时消失的原因
前端·javascript·面试
小白路过10 小时前
CSS transform矩阵变换全面解析
前端·css·矩阵
爬山算法10 小时前
Redis(110)Redis的发布订阅机制如何使用?
前端·redis·bootstrap
REDcker11 小时前
前端打包工具 - Rollup 打包工具笔记
前端·笔记
前端大卫11 小时前
动态监听DOM元素高度变化
前端·javascript
前端大卫11 小时前
Webpack 老项目的优化实践
前端
开利网络11 小时前
合规底线:健康产品营销的红线与避坑指南
大数据·前端·人工智能·云计算·1024程序员节
yinuo11 小时前
纯CSS&JS实现:丝滑渐变过渡的动态导航栏
前端
qq. 280403398411 小时前
vue介绍
前端·javascript·vue.js