当前位置: 首页 > news >正文

vue3 ts 导出PDF jsPDF

jsPDF 是一个基于 HTML5 的客户端解决方案,用于生成各种用途的 PDF 文档。

1、安装:npm install jspdf

                 npm install --save html2canvas

2、引入:import jsPDF from "jspdf" 

                import html2canvas from 'html2canvas'

3、使用

<template><div><a-button @click="handelChangeTime">pdf </a-button></div><div ref="chartRef"><h2>这里面添加需要导出的内容</h2><h3>支持表格、文字、图片、</h3><h3>原理就是将html生成为canvas图片,然后使用jsPDF将图片转为pdf</h3></div>
</template><script lang="ts" setup>
import { ref } from 'vue'
import html2canvas from 'html2canvas'
import jsPDF from 'jspdf'// 获取需要转换为PDF的元素 ref
const chartRef = ref()
const handelChangeTime = () => {// 将元素转换为canvas对象html2canvas(chartRef.value).then((canvas) => {// 将canvas对象转换为图像const imgData = canvas.toDataURL('image/png')const pdf = new jsPDF()const imgProps = pdf.getImageProperties(imgData)const pdfWidth = pdf.internal.pageSize.getWidth()const pdfHeight = (imgProps.height * pdfWidth) / imgProps.width// 将图像添加到PDF文件中pdf.addImage(imgData, 'PNG', 0, 0, pdfWidth, pdfHeight)// 保存PDF文件pdf.save('exported.pdf')})
}
</script><style lang="less" scoped></style>

http://www.lryc.cn/news/216129.html

相关文章:

  • Agent 应用于提示工程
  • 云原生安全日志审计
  • 2023 辽宁省大学数学建模 B 题 数据驱动的水下导航适配区分类预测
  • ES 8.x新特性一览(完整版)
  • 生产实战shell,给安全部门提供日志
  • HarmonyOS数据管理与应用数据持久化(一)
  • 小型气象站在智慧农业高标准农田建设中的作用
  • kruskal求最小生成树
  • 876. 链表的中间结点
  • 【机器学习】二、决策树
  • 低代码PAAS加速推进企业数字化转型
  • 时间复杂度为 O(nlogn) 的排序算法
  • 掌控你的Mac性能:System Dashboard Pro,一款专业的系统监视器
  • C++ Qt如何往Windows AppData目录写数据
  • xargs命令
  • 【原创】java+swing+mysql无偿献血管理系统设计与实现
  • C语言 Number 1 基本数据类型
  • mac录屏快捷键指南,轻松录制屏幕内容!
  • 精准测试是个错误
  • 算法通关村第四关|黄金挑战|表达式问题
  • Mac安装DBeaver
  • C++ 类 根据成员变量的指针获取类对象的指针
  • 图论08-图的建模-状态的表达与理解 - 倒水问题为例
  • sqlserver字符串拼接
  • MySQL-----事务
  • hive的安装配置笔记
  • lamba stream处理集合
  • 操作系统 day04(系统调用)
  • 【深度学习】pytorch——线性回归
  • golang工程——中间件redis,单节点集群部署