使用vue-pdf预览pdf和解决pdf电子签章显示问题

使用vue-pdf预览pdf和解决pdf电子签章显示问题

第一步:npm install vue-pdf

第二步页面使用vue-pdf

<template>
  <div class="pdf1">
    <Pdf v-for="i in numPages" :key="i" :src="src" :page="i" />
  </div>
</template>

<script>
import Pdf from "vue-pdf";

export default {
  components: {
    Pdf
  },
  data() {
    return {
      numPages: undefined,
      src: "",
      fileUrl: `${window.location.origin}/test1.pdf`
    };
  },
  mounted() {},

  created() {
    this.getPdfs();
  },
  mounted() {},
  methods: {
    // 获取pdf
    getPdfs() {
      // 引入pdf.js的字体
      let CMAP_URL = "https://unpkg.com/pdfjs-dist@2.0.943/cmaps/";
      // let CMAP_URL = `${window.location.origin}/cmaps/`;

      this.src = Pdf.createLoadingTask({
        // url: 'http://h1.pdfdo.com/Download/112617223362/112617223362.html', //在线链接pdf
        url: this.fileUrl, //本地pdf
        cMapUrl: CMAP_URL,
        cMapPacked: true
      });
      this.src.promise.then(pdf => {
        this.numPages = pdf.numPages;
      });
    }
  }
};

第三步pdf预览电子签章显示问题-解决办法

步骤一: 在node_modules/pdfjs-dist/build/pdf.worker.js注释掉一行代码

if (data.fieldType === "Sig") {
      data.fieldValue = null;
      // 注释掉底下这行 就可以显示电子签章
      // this.setFlags(_util.AnnotationFlag.HIDDEN);
}

步骤二:在node_modules/pdfjs-dist/es5/build/pdf.worker.js注释掉一行代码

 if (data.fieldType === "Sig") {
    data.fieldValue = null;
      // 注释掉底下这行 就可以显示电子签章
      // _this3.setFlags(_util.AnnotationFlag.HIDDEN);
 }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

java亮小白1997

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值