前台-vue3 html转pdf

步骤一:安装依赖包

npm i html2canvas
npm i jspdf

步骤二:在utils文件夹下新建htmlToPdf.ts文件

// 页面导出为pdf格式
import html2Canvas from 'html2canvas'
import jsPDF from 'jspdf'

const htmlToPdf = {
	getPdf(title, loading) {
		// loading = true;
		console.log(loading)
		html2Canvas(
			document.querySelector('#pdfDom') as HTMLElement,
			{
				allowTaint: false,
				taintTest: false,
				logging: false,
				useCORS: true,
				dpi: window.devicePixelRatio * 4, //将分辨率提高到特定的DPI 提高四倍
				scale: 4, //按比例增加分辨率
			} as any
		).then((canvas) => {
			const pdf = new jsPDF('p', 'mm', 'a4') //A4纸,纵向
			const ctx: any = canvas.getContext('2d')
			const a4w = 190
			const a4h = 272 //A4大小,210mm x 297mm,四边各保留10mm的边距,显示区域190x277
			const imgHeight = Math.floor((a4h * canvas.width) / a4w)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值