美文网首页
vue导出pdf格式文件

vue导出pdf格式文件

作者: 阿羡吖 | 来源:发表于2020-03-19 17:18 被阅读0次

一、安装所需要的依赖

1.将页面html转换成图片
npm install --save html2canvas
2.将图片转换成gif
npm install jspdf --save

二、定义全局函数,创建一个htmlToPdf.js文件在指定位置(看个人习惯,一般都在'src/components/utils/htmlToPdf')

// 导出页面为PDF格式
import html2Canvas from 'html2canvas'
import JsPDF from 'jspdf'
export default{
  install(Vue, options){
    Vue.prototype.getPdf = function(){
      var title = this.htmlTitle
      html2Canvas (document.querySelector('#pefDom'),{
        allowTait:true
      }).then(function (canvas){
        let contentWidth = canvas.width
        let contentHeight = canvas.height
        let pageHeight = contentWidth / 592.68 * 841.89
        let leftHeight = contentHeight
        let postion = 0
        let imgWidth = 595.68
        let imgHeight = 592.28 / contentWidth * contentHeight
        let pageData = canvas.toDataURL('image/jpeg',1.0)
        let PDF = new JsPDF('','pt','a4')
        if(leftHeight < pageHeight){
          PDF.addImage(pageData,'JPEG',0,0,imgWidth,imgHeight)
        }else{
          while(leftHeight > 0 ){
            PDF.addImage(pageData,'JPEG',0,postiotion,imgWidth,imgHeight)
            leftHeight -= pageHeight
            position -= 841.89
            if(leftHeight > 0){
              PDF.addPage()
            }
          }  
        }
        PDF.save(title + '.pdf')
      })
    } 
  }
}

三、在main.js中使用我们定义的函数文件。

import htmlToPdf from '@/components/utils/htmlToPdf'
Vue.use(htmlToPdf)

四、在需要的导出页面 调用我们的getPdf方法即可

<div class="row"  id="pdfDom" style="padding-top:55px;background-color:#fff">
  //给自己需要导出的UI部分 定义id为'pdfDom'此部分将是pdf显示的部分
</div>
<button type="button" class="btn btn-parimary" @click="getPdf()"></button>
......
export default{
  data(){
    return {
      htmlTitle:'页面导出PDF文件名'
    }
  } 
}

相关文章

  • Confluence导出PDF格式文件不显示中文

    Confluence导出PDF格式文件不显示 最近工作时,将confluence上的博文导出PDF在本地查看,发现...

  • vue导出pdf格式文件

    一、安装所需要的依赖 二、定义全局函数,创建一个htmlToPdf.js文件在指定位置(看个人习惯,一般都在'sr...

  • VUE框架下搭建在线Excel应用

    本项目实现功能:VUE框架中 嵌入表格控件SpreadJS,实现导入Excel、导出Excel、导出PDF、打印表...

  • vue导出pdf

    1 、我们要添加两个模块 2、定义全局函数..创建一个htmlToPdf.js文件在指定位置.我个人习惯放在('s...

  • Vue导出PDF

    一. 使用vue-to-pdf https://www.npmjs.com/package/vue-to-pdf[...

  • vue导出pdf

    vue导出pdf文件方法:html2canvas+jspdf 第一步:安装 第二步:定义全局函数 创建一个html...

  • 为什么PDF不能编辑?你应该这么做

    刚接触PDF格式文件的人可能不了解PDF文件的特点,需要编辑PDF格式文件的时候会发现PDF文件无法编辑。想要编辑...

  • 双层的PDF是如何生成的?

    什么是双层的PDF文档? 双层PDF格式文件是一种具有多层结构的PDF格式文件,是PDF文件衍生的一种文件,其特点...

  • iOS PDF文件格式转换

    目录 各种格式文件转PDF多张图片转PDFUIWebView转图片 各种格式文件转PDF 其实就是用UIWebVi...

  • Vue 导出PDF文件

    step-1: 安装依赖包 使用

网友评论

      本文标题:vue导出pdf格式文件

      本文链接:https://www.haomeiwen.com/subject/tbmlyhtx.html