pdfjs-dist锁定版本号2.2.228,别的都不太好使,各种各样的报错

不锁定的时候升高版本出现pdf预览不了

引用的时候 import pdfjsLib from 'pdfjs-dist/build/pdf.js'

import pdfjsLib from 'pdfjs-dist/webpack'这样写会报错,偶尔会报错,找不到问题,所以还是用上面的引用

function renderPdf(pdf) {
                let pdfDoc = pdf;
                let fragment = document.createDocumentFragment();
                console.log('frage', fragment);
                for (let i = 1; i <= pdfDoc.numPages; i++) {
                    let canvas = document.createElement('canvas')
                    let canvasContext = canvas.getContext('2d')
                    pdfDoc.getPage(i).then((page) => {
                        var viewport = page.getViewport(1); // 页面缩放比例,值越大越清晰
                        canvas.height = viewport.height;
                        canvas.width = viewport.width;
                        canvas.style.width = document.body.clientWidth + "px";
                        canvas.style.height = document.body.clientWidth * (viewport.height / viewport.width) + "px";
                        canvasContext.clearRect(0, 0, canvas.width, canvas.height);
                        var renderContext = {
                            canvasContext: canvasContext,
                            viewport: viewport,
                            rotate: 90,
                        };
                    page.render(renderContext) })
                    fragment.appendChild(canvas)
                }
                document.getElementById('pdf-box').appendChild(fragment)
            }
            const loadingTask = pdfjsLib.getDocument(this.getImageUrl(this.pdfFile));
            loadingTask.promise.then((pdfDocument) => {
                this.numPages = pdfDocument.numPages;
                renderPdf(pdfDocument)
            })
 
this.pdfFile在这里是后端返回的ali文件信息   
this.getImageUrl(this.pdfFile)是返回一个图片地址

pdfjs-dist 后端返回文件前端实现预览pdf的更多相关文章

  1. 使用pdf.js实现前端页面预览pdf文档,解决了跨域请求

    pdf.js主要包含两个库文件,一个pdf.js和一个pdf.worker.js,,一个负责API解析,一个负责核心解析 官网地址:http://mozilla.github.io/pdf.js/ 下 ...

  2. 前端实现在线预览pdf、docx、xls、ppt等文件

    思路:前台将各种格式的附件上传到服务器----后台通过方法将这些格式的文件转化成图片,前台通过放映ppt的方式将其展示在页面上. 关键点:reveal.js 参考文章:https://www.awes ...

  3. 前端实现在线预览pdf、word、xls、ppt等文件

    最近在做一个公司的资源管理系统,一些知识小记一下. 1.前端实现pdf文件在线预览功能 方式一.pdf文件理论上可以在浏览器直接打开预览但是需要打开新页面.在仅仅是预览pdf文件且UI要求不高的情况下 ...

  4. JS通过使用PDFJS实现基于文件流的预览功能

    需求: 使用JS实现PDF文件预览功能 备选方案: 使用ViewerJS,官网  http://viewerjs.org/ 使用PDFJS,官网  https://mozilla.github.io/ ...

  5. 前端vue实现pdf文件的在线预览

    3.前端vue实现pdf文件的在线预览 我是通过 <iframe> 标签就可以满足我工作的 pdf预览需求 如果<iframe> 无法满足需求 , 可以使用pdf.js这个插件 ...

  6. 使用pdfjs插件在线预览PDF文件

    前言 本文介绍在html中使用 pdfjs插件在线预览PDF文件的方法. 实现步骤 下载 pdfjs 并引入项目中 到PDFJS官网 http://mozilla.github.io/pdf.js/g ...

  7. 前端实现预览ppt,word,xls,pdf文件

    1.前端实现pdf文件在线预览功能 ps:刚好工作上有这个需求,所以到处找了一下处理方案,大家有需要可以试一下这几种方案,找到合适自己的 方式一. pdf文件理论上可以在浏览器直接打开预览但是需要打开 ...

  8. 前端使用pdf.js预览pdf文件

    现在的浏览器基本都支持直接把pdf文件拖到浏览器就可以打开了,不用安装额外的插件.但是不同的浏览器显示的页面不一样.如果我们想在网页上统一预览pdf怎样实现呢? Mozilla开源了一个插件pdf.j ...

  9. 前端使用pdf.js预览pdf文件,超级简单

    现在的浏览器基本都支持直接把pdf文件拖到浏览器就可以打开了,不用安装额外的插件.但是不同的浏览器显示的页面不一样.如果我们想在网页上统一预览pdf怎样实现呢? Mozilla开源了一个插件pdf.j ...

  10. java多图片上传--前端实现预览--图片压缩 、图片缩放,区域裁剪,水印,旋转,保持比例。

    java多图片上传--前端实现预览 前端代码: https://pan.baidu.com/s/1cqKbmjBSXOhFX4HR1XGkyQ 解压后: java后台: <!--文件上传--&g ...

随机推荐

  1. 正确处理iOS从下方滑出滚动视图

    本文提供 Demo下载 在iOS 11开始,从最早的地图应用到最近的捷径,陆续有系统应用使用从下方滑出列表的形式,这种系统提供的圆角风格视图用手势划出和隐藏时非常自然流畅.国内的一些应用也跟进了这种交 ...

  2. Delphi as 和 is 的使用

    as就是把某个类型对象转换为某个指定类型,这样方便使用指定类型中的一些成员. is就是判断某个对象是不是某个类型,可以筛选出我们需要的对象. 下面是一个as is 的实例代码,该代码同时也实现了两种方 ...

  3. PID模板

    typedef struct{ float Kp,Ki,Kd; float Target; float Current; float Error[3]; float DeadZone; float O ...

  4. UI动画 - CATransaction

    前言 1 - CAAnimation 并不是一个单纯的实现动画的框架,它原本叫 Layer Kit.管理着树状结构的图层数据,并快速组合这些图层,最终构成了一切可视化的基础 2 - 在构建可视化,也就 ...

  5. Beginning IOS 7 Development Exploring the IOS SDK - Handling Basic Interface Fun

    Beginning IOS 7 Development Exploring the IOS SDK 目前使用的是Objective-C,用这本书,简单记录一下 第一章,图书简介 第二章,简要介绍使用x ...

  6. 一个新App上线应该注意什么?

    一个新App上线应该关注哪些地方: 功能使用上无大问题遗留 用户使用体验尚佳 (前两条属于普通app更新也需要关注的点) 用户需要有反馈的入口,比如app内的反馈.用户可以直接联系到对应负责人进行反馈 ...

  7. [MicroPython ESP32] 内存分析

    [MicroPython ESP32] 内存分析 [(1)芯片:ESP32-WROOM-DA] 手册: https://www.espressif.com.cn/zh-hans/support/doc ...

  8. django项目中使用swagger来实现接口文档自动生成

    一.Swagger 一般我们在对接前后端的时候,都需要提供相应的接口文档.对于后端来说,编写接口文档即费时费力,还会经常因为没有及时更新,导致前端对接时出现实际接口与文档不一致.而且手写接口文档还容易 ...

  9. Navie UI

    开发文档 一个 Vue 3 组件库, 它比较完整,主题可调,用 TypeScript 写的,快.

  10. docker 启动 重启命令

    启动        systemctl start docker 守护进程重启   sudo systemctl daemon-reload 重启docker服务   systemctl restar ...