1.使用PDF.js預(yù)覽PDF
(1)下載文件?http://mozilla.github.io/pdf.js/getting_started/#download? ? 穩(wěn)定版就好
(2)? 下載后的文件格式
(3)因?yàn)镻DF.js默認(rèn)不跨域曹阔,所以想用路徑預(yù)覽的,首先要解決跨域問(wèn)題樱蛤,我這里是把這個(gè)文件放進(jìn)Api服務(wù)器的路徑下,讓他不跨域翅帜。
(4)然后建一個(gè)vue頁(yè)面???let ht? 是你訪問(wèn) PDF.js中web -> viewer.html 的路徑 (在服務(wù)器中) let op 是你要預(yù)覽PDF的路徑,這里用encodeURIComponent處理下
<template>
<div class="Tem">
<iframe :src="pdfUrl" frameborder="0" style="width: 100%; height: 100%"></iframe>
</div>? ?
</template>
<script>
export default {
? ? data(){
? ? ? return {
? ? ? ? ? pdfUrl:''
? ? ? ? }
? ? },
? ? created() {
?let ht = ''
let op = ''
this.pdfUrl = ht+'?file='+ encodeURIComponent(op)
? ? },
? ? mounted(){
? ? },
? ? methods:{
? ? },
}
</script>
<style scoped lang="scss">
.Tem{
width: 100%;
height: 100%;
}
</style>
(5)到這一步基本就能看到效果了命满,這里有個(gè)坑涝滴,因?yàn)樵创a中,會(huì)自動(dòng)過(guò)濾一下電子簽章胶台,硬章之類的歼疮,所以想要顯示這些的同學(xué)
? ? a.找到PDF.JS -->?build --> ?pdf.worker.js?
注釋掉代碼中這個(gè)判斷,不同版本可能判斷條件不同诈唬,但大致條件都差不多
if (data.fieldType === 'Sig') {
? ? ? _this2.setFlags(_util.AnnotationFlag.HIDDEN);
? }
b.為了保險(xiǎn)起見(jiàn)韩脏,這有個(gè)壓縮版的,也可以去注釋掉?