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

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

第一步:npm install vue-pdf

第二步页面使用vue-pdf

java 复制代码
<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注释掉一行代码

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

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

java 复制代码
 if (data.fieldType === "Sig") {
    data.fieldValue = null;
      // 注释掉底下这行 就可以显示电子签章
      // _this3.setFlags(_util.AnnotationFlag.HIDDEN);
 }
相关推荐
sasaraku.24 分钟前
serviceWorker缓存资源
前端
RadiumAg1 小时前
记一道有趣的面试题
前端·javascript
yangzhi_emo2 小时前
ES6笔记2
开发语言·前端·javascript
yanlele2 小时前
我用爬虫抓取了 25 年 5 月掘金热门面试文章
前端·javascript·面试
中微子3 小时前
React状态管理最佳实践
前端
烛阴3 小时前
void 0 的奥秘:解锁 JavaScript 中 undefined 的正确打开方式
前端·javascript
中微子3 小时前
JavaScript 事件与 React 合成事件完全指南:从入门到精通
前端
Hexene...3 小时前
【前端Vue】如何实现echarts图表根据父元素宽度自适应大小
前端·vue.js·echarts
天天扭码4 小时前
《很全面的前端面试题》——HTML篇
前端·面试·html
xw54 小时前
我犯了错,我于是为我的uni-app项目引入环境标志
前端·uni-app