无法在 PDFjs 中为 pdf.worker.js 指定自定义路径
Unable to specify custom path for pdf.worker.js in PDFjs
我已经在我的 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');
});
我已经在我的 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');
});