这两天遇到了一个问题,如何能pdf数据的base64显示在前端页面上,比对了网上各种方法,我发现还是用vue-pdf插件更加的方便快捷的满足我的需求。下面我介绍一下对vue-pdf插件的使用。
1,vue-pdf的安装
在控制台输入下方命令进行安装

npm install--save vue-pdf 

2,在页面进行注册

import pdf from 'vue-pdf'
    export default {
        name: "ReportInfo",
      components:{
          pdf
      },
      data(){
          return{
            iir133: '',             //base64
            base64Imgs:'',          //base64的PDF图片
            pdfUrl:''
          }}

3,对base64数据进行从处理

this.base64Imgs = "data:application/pdf;base64,"+this.iir133;
this.pdfUrl=pdf.createLoadingTask({ url: this.base64Imgs,cMapUrl: 'https://cdn.jsdelivr.net/npm/pdfjs-dist@2.5.207/cmaps/', cMapPacked: true })

pdf.createLoadingTask()方法能够让pdf中的中文内容显示完全,不发生混乱。关于这个方法的写法,我发现上述写法能够解决多次访问仍不会出现pdf内容混乱的问题,网上还有利用引用组件的方式,来解决中文内容混乱,但在第二次及以后访问后,还会出现内容混乱的问题。
4,前端代码
在这里插入图片描述

存在的问题:我是要显示一个pdf报告,但是不知道为什么报告中的横线样式显示不出来。其他内容都正常显示,即使我用pdf.js插件进行显示也会出现这个问题。我想请问各位大佬这是什么原因?请各位指点一二!

Logo

前往低代码交流专区

更多推荐