Vue怎么使用pdfobject实现预览pdf
安装
pnpm add pdfobject
引入
import pdf from 'pdfobject'
使用
这里使用会借助于FileReader,FileReader用于读取文件
// 点击文件上传回调
handlePreview(file) {
const { raw } = file
// 预览pdf
// FileReader用于读取文件
let reader = new FileReader()
reader.readAsDataURL(raw) // 这里只需要将文件传进去就可以了
reader.onload = e => {
// reader.result 同 e.target.result
// 1.文件名 2.要将pdf渲染到的指定位置(dom元素) 3.指定在embed标签中的显示的宽度
pdf.embed(reader.result, '#previewPdfAndDocx', { width: '100%' })
}
},效果
我这里没在上传之前判断,这里是上传之后,点击文件的时候进行预览,也可以在上传文件之前进行预览,然后决定是否进行上传。根据具体项目需求来

补充
除了上文,还可以利用pdfobject实现其他功能,希望对大家有所帮助
效果1:在指定位置(当指定位置为全局时)浏览PDF
在指定div中浏览PDF
效果2:在指定位置(当指定位置为局部时)浏览PDF
在指定div中浏览PDF
效果3:指定从多少页开始阅读(必须同时指定显示PDF的div)
在指定div中浏览PDF