vue中pdf在线预览-全页预览

1.安装vue-pdf

npm install --save vue-pdf

2.引入vue-pdf

import pdf from "vue-pdf";
<div class="content" ref="content">
 <pdf
 ref="pdf"
   v-for="i in numPages"
   :key="i"
   :src="url"
   :page="i"
 ></pdf>
 </div>
components: {
    pdf
}
methods:{
getNumPages() {
      let loadingTask = pdf.createLoadingTask(this.url);
      loadingTask.promise
        .then((pdf) => {
          this.numPages = pdf.numPages;
        })
        .catch((err) => {
          console.error("pdf 加载失败", err);
        });
    }
}

3.放大缩小功能

scrollTo(e: number) {
      let contentEl = this.$refs.content as HTMLElement;
      let contentElWidth = contentEl.offsetWidth;
      let scrollWidth = (contentElWidth * ((e - 100) / 100)) / 2;
      contentEl.scrollLeft = scrollWidth;
      console.log(scrollWidth);
    },
    scaleD(e: number) {
      let el = this.$refs.pdf as [];
      el.forEach((element) => {
        element.$el.style.width = e + "%";
      });
      this.scrollTo(e);	
    },
    scaleX(e: number) {
      let el = this.$refs.pdf as [];
      el.forEach((element) => {
        element.$el.style.width = e + "%";
      });
      this.scrollTo(e);
    },

4.完毕

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值