问题标签 [pdfjs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
268 浏览

javascript - 未处理的错误:未定义的变量:PDFJS 仅适用于 Opera

我使用如下导入的pdfjs

我有将 PDF 渲染到画布的脚本:

它与 Chrome 和 Firefox 完美配合。但是对于 Opera,我收到以下错误

我做错了什么?

编辑:

现在我注意到,在 Firefox 中,我在控制台中收到以下错误表单 pdf.js(尽管它按预期工作):

0 投票
1 回答
3612 浏览

javascript - 使用 laravel 5 隐藏带有 pdfjs 的 pdf 工具栏

请指导我如何从我网站页面上动态显示的 pdf 文档中删除 pdf 工具栏,以阻止从网站打印和下载该文档。

这是工具栏在此处输入图像描述

在 web.php 路由页面上,我有以下路由

它返回文件,然后显示在以下刀片页面中

我已将以下 javascript 添加到页面无济于事。

这似乎不起作用。

我也尝试过使用 pdfjs,但我不知道如何将它应用到 laravel 5 项目中。我期待任何支持来解决这个问题。

谢谢

0 投票
0 回答
746 浏览

gruntjs - 在一个缩小的 JS 文件中包含 pdf.worker.js

PDF.js 需要名为 pdf.worker.js 的文件。如果您将 PDF.js 包含到您的 HTML<script type="text/javascript" src="plugins/pdfjs-dist/build/pdf.js"></script> 中,那很好,例如 PDF.js 将在存储 pdf.js 的地方(在我的情况下,plugins/pdfjs-dist/build/)为其工作文件。但是,就我而言,我想将我所有的 JavaScript 依赖项连接并缩小到一个文件中。(通过咕噜声。)

我该如何为该 pdf.worker.js 文件执行此操作?如何将它包含到我的唯一 JS 文件中?

所以,到目前为止,我在 Grunt 中所做的是

这行得通,但它远非一个优雅的解决方案。除了看起来难看和需要附加文件之外,很可能有人可能会重命名name_of_my_app为其他文件,从而忽略复制过程并因此破坏 PDF.js

0 投票
0 回答
1045 浏览

javascript - 如何使用 PDFJS、Gulp 和 Webpack 渲染 PDF 文件

我尝试了几天使用 pdfjs 插件渲染一个简单的 pdf,但是按照我在不同指南中找到的说明执行此操作似乎很深奥(我的意思是我对插件非常陌生,特别是网络包)。

我一直在关注这个例子: https ://github.com/mozilla/pdf.js/wiki/Setup-PDF.js-in-a-website

我已经使用 npm 将构建下载到我的工作区中,我将 pdfjs-dist 放入我的 node_modules,我知道我必须将 pdfjs-dist 放入我的 gulp.js 中,并且我有 viewer.html 和本地主机运行但当我在浏览器中打开 viewer.html 时,我看不到 PDF。我没有在查看器中更改 var DEFAULT_URL = 'compressed.tracemonkey-pldi-09.pdf' 。.js 因为该文件位于同一文件夹中。

我在控制台中收到此错误:

任何帮助将不胜感激。

0 投票
0 回答
297 浏览

javascript - JS:如何在 iframe 中找到所有匹配的单词?

我有很多单词:

iFrame我的页面上有一个(在同一个域中),我需要突出显示其中这些单词的所有匹配项。此外,我需要更改这些单词的样式(更改一些文本样式并处理它们的点击事件)

有什么解决方案吗?在 PDF js 中搜索工作完美https://mozilla.github.io/pdf.js/web/viewer.html

我怎么能实现相同的?

0 投票
0 回答
58 浏览

javascript - 如何显示 html 格式的 pdf 并获取格式化的 html?

我需要在浏览器中显示 html 格式的 pdf 并选择、复制和编辑格式化的 html。

到目前为止,我尝试了 pdftohtml 命令行实用程序和 mozilla 的 pdf.js 平台。我似乎无法用一个实用程序很好地完成这两项任务。例如,我可以使用 pdf.js 非常准确地显示 pdf,但我无法生成格式化的文本图层,为选择文本而创建的叠加层只有定位样式而没有字体样式。

解决这个问题的最佳方法是什么?

0 投票
1 回答
1238 浏览

file - pdf.js 和受保护的文件以其他方式无法查看

我正在使用 PDF.js 库在我的网站中显示 PDf 文件(使用 pdf_viewer.js 在屏幕上显示文档),但我显示的 PDF 文件是机密文件,我需要能够在网站内显示它们但阻止未经授权的公共人员仅通过输入他们的 URL 并看到它们直接显示在他们的浏览器中来查看相同的文件。

我试图在我的 htaccess 文件中添加 Deny from all line,但这当然也阻止了查看器显示文档,所以这似乎是不可行的。显然,任何人都可以简单地查看检查器并查看查看器正在读取的 pdf 文件,因此看起来直接 URL 无论如何都不安全。

我确实读过关于 PDF.js 能够读取二进制数据的信息,但我不知道如何在我自己的文件系统中读取 PDF 并准备它以供图书馆使用,即使这意味着它只是一点点加载速度较慢以获取文件内容并即时准备。

任何人都有一个解决方案,允许 PDFJS 在不透露源 PDF URL 的情况下工作,或者以其他方式使用本地文件调用读取文件?

0 投票
0 回答
327 浏览

javascript - 使用 webpack 从 TypeScript 文件中引用 Js 文件

我有点迷路了......我正在尝试使用 PDFJS 来使用 JavaScript 呈现 PDF,现在我需要使用插件来使文本可选。根据这篇文章,我必须使用这个文件。由于它似乎在 npm 上不可用,我将它添加到我的源代码中,并将它与 webpack 捆绑在 vendor.bundle.js 文件中:

现在,我想在我的 TypeScript 文件中使用它,所以我这样做:

Webpack 不会抱怨,但当我这样做时:

Chrome 说这TextLayerBuilder不是构造函数。当我做console.log这个对象时,它似乎是一个空对象。

如何在我的 TypeScript 中使用这个文件?

0 投票
1 回答
496 浏览

cordova - Windows Cordova 应用程序:应用程序无法在本地上下文中加载远程 Web 内容

我有一个 UWP cordova 应用程序,它使用 PDFJS 来呈现 pdf 文件。它将嵌入的字体加载为data-uri,但我收到了错误An app can’t load remote web content in the local context.和警告Warning: Load test font never loaded.。我想要做的是这样的,但在 UWP 应用程序中:https ://mozilla.github.io/pdf.js/web/viewer.html

这是加载字体的代码(在 pdf.js 中的第 7390 行附近):

一个这样的场景: @font-face { font-family:"g_d0_f9"; src:url(data:font/opentype;base64,T1RUTwAJAIAAAwAQQ0ZGIHp+hQ4AAACcAAAEQE9TLzJEe6zGAAAE3AAAAGBjbWFwlcEWgAAABTwAAAK0aGVhZKsnUBMAAAfwAAAANmhoZWEDxgIHAAAIKAAAACRobXR4AAAAAAAACEwAAAAsbWF4cAALUAAAAAh4AAAABm5hbWWVrNe7AAAIgAAAAnZwb3N0AAMAAAAACvgAAAAgAQAEAgABAQEhS0VKRVBSK1N3aXNzNzIxQlQtTGlnaHRDb25kZW5zZWQAAQEBK/gbAfgWBPs7+4D6fPpXBR0AAADKDx0AAADXER0AAAAaHQAABCUS+BwMFQACAQFdakNvcHlyaWdodCAxOTkwIGFzIGFuIHVucHVibGlzaGVkIHdvcmsgYnkgQml0c3RyZWFtIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuICBDb25maWRlbnRpYWwuL0ZTVHlwZSAwIGRlZgAAAAEAEQYAJQAAMAAANAAACwIAAQAEAGEAjQDpAVYBhgHYAjkCcQK/AzT76A58wvkgwwG8y/eFzAO8+AMV+xyTLaVXHkmsvmnOG86+rc2rH6W/lOn3HBr3HIHocr8ezWtYrUgbSFhpSWofcVeDLvscGsuKFfdvo/bs7KIg+2/7b3QgKipz9fdwHg6Ln/iosvcPnwH3dMgD93QWyPlyXAaAJltl+wOHCGUHipmYi5gbs7GOkbEfDovI+QvDEr7OU8T3fckT6L4W+AHI+74GjNPEx+biuri8s6fLCJqtk7S5GvcRRNT7AB4TWCJHP/sWH4DEB/cAjbPA2xvOt1g1+wFOUTs7H1lZXmBxXHFcf1SKSQgOfcT30MH3rcISvcdgx/dox2DLE5K991kV+xuM0D/3ARv3CtTd9xvvZcg5px8TbMuqrsffGvcDR9ImKE5F+xKIHseOBuSzvMzNtF06IVdb+wgeh1QGjJa)

有什么办法可以让它加载文件吗?

文件夹结构:

  • 索引.html
  • main.js
  • pdf-js/
    • 地图/
    • 图片/
    • 语言环境/
    • 兼容性.js
    • l10n.js
    • pdf.js
    • pdf.worker.js
    • 查看器.css
    • 查看器.js

Index.html(此处包含的标记是从 viewer.html 中提取的)

main.js

0 投票
0 回答
646 浏览

pdfjs - PDFJS 到具有更高分辨率/图像质量的固定宽度

我正在寻找使用 PDFJS 将 PDF 嵌入网页中。我想将它们渲染成一个固定宽度的画布(并让它们适当地缩放以适合画布),同时具有与原始 PDF 相似的分辨率/图像质量。如果我使用这样生成的视口:

对于小型画布,我得到了非常低质量的图像渲染。有没有办法指定 PDF 的渲染比例和分辨率/图像质量的建议?

我假设某种使用/调整包装器 div 大小的方法可能是解决方案,但迄今为止我的尝试在缩放画布内容方面并未成功。

(另外,我知道这与另一篇文章有​​关,但那篇文章没有提到为小画布指定更高质量的 pdf 渲染的方法)。