0

配置:

  • 网络浏览器及其版本:Chrome 97.0.4692.99
  • 操作系统及其版本:MacOS 10.15.5
  • PDF.js 版本:2.12.313
  • 是否为浏览器扩展:否
  1. 我使用范围请求来呈现 pdf
  2. 这行代码我得到了更多的块await this.pdfManager.requestRange(ex.begin, ex.end);
  3. 渲染第一页时这些块是不必要的;
  4. 当我注释这行代码时,该程序似乎也运行良好,并且我可以获得更少的块以使第一页更快;
  5. 那么这部分代码是做什么的呢?
  6. 是否可以不执行或不使用等待?
// src/core/xref.js

async fetchAsync(ref, suppressEncryption) {
    try {
      return this.fetch(ref, suppressEncryption);
    } catch (ex) {
      if (!(ex instanceof MissingDataException)) {
        throw ex;
      }
      await this.pdfManager.requestRange(ex.begin, ex.end);
      return this.fetchAsync(ref, suppressEncryption);
    }
  }

当我评论这行代码时,我可以得到更少的块,并且程序似乎也运行良好

图片

如果我什么都不做,网络中的范围请求是这样的

图片

4

1 回答 1

0

在 v2.12.313 中,PDFJS 将在文档初始化期间检查最后一页是否可以成功加载,以确保numPages正确,并回退到遍历整个 /Pages-tree。#14570

于 2022-02-21T02:38:01.917 回答