我已经在我的 ASP.NET MVC 应用程序中实现了 PDFjs。我遵循的步骤。
- 通过将 PDFjs 提供的代码复制为
WebViewer.html
,创建了一个用作 Pdf 查看器的操作。 - 在此页面上,我正确提供了该 HTML 页面所需的所有静态资源的路径。
现在唯一的问题是pdf.worker.js
的路径。当我运行该应用程序时,出现错误,提示找不到该文件。即使经过很多努力,我也无法解决这个问题。谁能告诉我,我需要在代码中进行哪些更改,以便我可以指定该文件的自定义路径?
根据代码,我可以说这个js文件是由pdf.js
内部引用的。但是 pdf.js
文件似乎是由 WebPack 生成的,并且更新该文件中的 pdf.worker.js
路径不会影响任何内容。
这就是 pdf.js 代码的样子:
最佳答案
使用 PDF.js 默认查看器,应用程序选项位于 viewer.js 文件中。虽然我没有完全理解它的工作原理,但查看器层似乎根据需要将配置值传递到 pdf.js 显示层。
在 2.0+ 版本中,您可以更改 workerSrc
的硬编码值,默认情况下如下所示:
workerSrc: {
value: '../build/pdf.worker.js',
kind: OptionKind.WORKER
}
我无法找到在 2.0 中动态设置它的方法。
在新预发布的2.1中,感谢this pull request ,您可以使用自定义 webviewerloaded
事件更轻松地设置查看器选项。例如,
document.addEventListener('webviewerloaded', function () {
document.PDFViewerApplicationOptions.set('workerSrc', '/your/path/here/pdf.worker.js');
});
关于javascript - 无法在 PDFjs 中指定 pdf.worker.js 的自定义路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53723039/