Vue中使用 pdf.js

Vue中使用 pdf.js

后端代码SpringBoot整合pdf.js

  • pdf.js下载地址

http://mozilla.github.io/pdf.js/
下载的pdf包放在static文件目录下

  • 由于后端返回的数据是文件的路径,貌似还解决了一个跨域的问题,所以就直接使用的路径,用的这个pdf的模板
//接收到的数据:data: "http://file.huistone.com/projectPdf/2020/09/12/c59fc07eb05f4076a7e6d00dbff854b9/单级放大电路.pdf"
window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent(res.data))

出来的是这样的,可以放大缩小,打印
在这里插入图片描述

  • 还有一种后台返回的数据格式,不是文件路径的,就需要做一下配置:但本人还没有测试过
 this.axios({
 	methods: 'get',
 	//请求中需要配置:
 	withCredentials: false,
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
    },
    responseType:'blob',
    mineType:'text/plain; charset=x-user-defined', 
 	params:{
 		"projectId": "2"
	}
 }).then( response => {
 	if (response.status == 200) {
 		//接收数据之后配置一下
    	let blob = new Blob([response.data], {type: "application/octet-stream"});
	    let pdfUrl = window.URL.createObjectURL(blob);
        // console.log(response.data);//请求成功,response为成功信息参数
        // this.pdfUrl = response.data;
        window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent(pdfUrl))
    } else {
	    console.log(response.message);//请求失败,response为失败信息
    }
 });

PS:如果是这样的完整路径:

"http://file.huistone.com/projectPdf/2020/09/12/c59fc07eb05f4076a7e6d00dbff854b9/单级放大电路.pdf"

想要在页面模块区域直接显示,可以直接使用

<iframe src="http://file.huistone.com/projectPdf/2020/09/12/c59fc07eb05f4076a7e6d00dbff854b9/单级放大电路.pdf" frameborder="0" style="width:700px;height:800px"></iframe>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值