问题标签 [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 回答
2393 浏览

javascript - 如何用pdf.js实现鼠标滚轮缩放功能?

pdf.js 似乎是一个强大但糟糕的文档工具。你们中的任何人都知道如何使用它创建缩放功能吗?我尝试了一些东西,但它没有按预期工作。这是一个小提琴:http: //jsfiddle.net/oeaLzavn/2/

这是代码:

HTML:

CSS:

javascript:

比例是错误的参数吗?或者它只是一个CSS的东西?有任何想法吗?

0 投票
1 回答
3388 浏览

javascript - PDF.js - 一次打印多个文档

我需要在由 AJAX 响应确定的页面上放置多个 PDF,当所有文档和页面都呈现后,调用 window.print。

每个文档的页面(画布)都被添加到具有“pdfdoc”类的 div 中,以按文档保持页面顺序。

我是 Promises 的新手,由于异步性质,我无法确定何时调用 window.print。有时在所有页面可用之前调用它,即使我在调用它之前检查渲染承诺中最后一个文档的最后一页。下面是代码:

有谁知道在呈现所有文档和页面后如何调用 window.print ?

0 投票
0 回答
513 浏览

javascript - PDFJs 直接打印而不显示 PDF

我必须从 Silverlight 打印 PDF,避免通过 Silverlight 打印队列(它会生成超大的打印队列),所以我很难使用 PDF.JS 直接显示/打印 pdf

我已经设法使用工具栏和打印按钮正确显示 PDF,当我单击它时,我执行

这会正确打开打印对话框,但它会调用浏览器的打印,所以如果我不指定它不会打印的内容

我可以以某种方式将 PDF 内容传递给窗口打印吗?

谢谢

0 投票
1 回答
255 浏览

javascript - 如何在最新版本的 chrome 中显示画布对象?

我在 asp.net 中使用 pdfjs 在 chrome 中显示 pdf。输出显示为带有多个 div 的画布对象,并且输出在 chrome 版本 42.0.2311.152 dev-m 中正确显示。但是当 chrome 更新到其最新版本时,pdfjs 输出不会显示。

在 Firefox 中没有这样的问题,但我们的要求是使用 chrome。

通过检查元素,以下内容以 chrome 旧版本(42.0.2311.152 dev-m)的 pdf 显示呈现。在最新版本的 chrome 中,不会呈现这样的 div。

pdfjs 的链接https://github.com/mozilla/pdf.js/

0 投票
1 回答
3487 浏览

javascript - 修改 viewer.js 文件

根据 Mozilla 的 pdfjs 插件,我可以通过将查询参数传递给viewer.html来查看我的 pdf,如下所示:

这工作正常。但我有一些不同的要求。我的项目中的要求是我需要在单个页面上有标签之类的功能。每个选项卡都包含一个 pdf 文件。

所以,我想把所有代码都viewer.js变成一个大函数。这样我就可以将它用作构造函数来渲染每个 pdf 文件。像这样的东西:

无论如何,当我能够在我的项目中成功集成 pdfjs 的查看器功能时,我决定稍后进行上述更改。

我的项目总结

  • 单页应用
  • 所有模板都保存在名称对象内的单个文件中 -templates

为此,首先,我复制了 body 标记内的所有 html,viewer.html并将其作为新属性附加到templates对象。然后我将示例中的所有必要和依赖文件复制到我的项目文件夹中并动态加载它们。我包含的文件是:

  • pdf.js
  • pdf.worker.js
  • 查看器.js
  • l10n.js
  • viewer.css -我没有动态加载这个文件。

加载文件后,我正在viewer.html使用lodash. 尽管如此,我还是无法在我的项目中看到渲染的 pdf。我怀疑这可能是因为一切都是动态发生的。(但我不确定,因为一切都按应有的顺序呈现

顺便说一句,我添加了名称与文件compressed.tracemonkey-pldi-09.pdf相邻的默认 pdf。index.html我会错过什么?

Firefox 和 chrome 不会抛出任何错误。

注意:我可能做错了。建议我在正确的方向上解决问题将是可观的。

0 投票
1 回答
579 浏览

javascript - 在 JavaScript 中与文件客户端交互

我需要仅使用客户端 JavaScript 提取 PDF 的文本。

我有这个 JSFiddle http://jsfiddle.net/go279m0h/

从 PDF 中获取文本的 PDF JS 函数目前适用于服务器端文件路径,但我无法让它接受用户上传文件的 files[0] 参数。

运行此程序时不断收到的错误是“未捕获的错误:getDocument 中的参数无效,需要 Uint8Array、字符串或参数对象”

底部的第二个选项是我获得该功能的地方,我可以将其用于文本提取。 用Javascript从pdf中提取文本

0 投票
1 回答
563 浏览

javascript - Pdf.js 在画布上不一致地呈现文本

我有一个相当大的 AngularJS 应用程序。我已经从我的应用程序内的示例文件夹中集成了 PDF.JS simpleviewer.html 代码(没有修改它)。当我使用 PDF.JS 在容器中呈现单个页面(不是 iframed)时,我得到非常不一致的文本呈现:

原始 原来的 粗体 在此处输入图像描述 不一致 字体 不一致 在此处输入图像描述

当我在我的应用程序之外使用与示例代码相同的 pdf 文件时,它总是正确呈现。只有当我在我的应用程序中集成 simpleviewer.html(不修改单行)时,才会出现此问题。

你能建议它的根本原因是什么。我应该在哪些方面寻找冲突?

0 投票
0 回答
181 浏览

javascript - PDF.js 上的 TextRange.getBoundingClientRect 在 IE10/IE11 中全为零

textRange.getBoundingClientRect在使用 PDF.js 呈现的页面中执行时在 IE10/IE11 中返回全零(左侧、顶部、宽度、高度...)。

https://mozilla.github.io/pdf.js/web/viewer.html

getBoundingClientRect方法在 Firefox 和 Chrome 中给出了正确的值,但在 IE 中没有。打开上面的网址,进行多行选择,在开发者控制台中执行以下代码:

根据我在检查 PDF.js DOM 后的理解,当元素绝对定位时,IE 返回全零。我在下面的演示中验证了这个假设:

http://jsfiddle.net/0px1ee59/3/

打开上面的 URL 后,打开开发者控制台并尝试选择一些文本。如果您选择跨越多个绝对定位的元素,IE 将给出全零。

所以我的问题是在 IE 的 PDF.js 页面中获取范围维度的替代方法是什么?

0 投票
1 回答
3825 浏览

javascript - 如何使用 pdf.js 获取 pdf 标题?

问题是:如何使用 pdf.js 获取 pdf 文件的名称?我正在从 node 运行一个 pdf.js 示例的变体,我想知道是否有可能得到它。我一直在搜索 pdf.js 的 docs/source,但找不到任何明显的东西。我正在使用这段代码,它(到目前为止)显示了在给定文件夹中找到的每个文件的页数(在本例中,是运行此代码的目录):

我认为文件的名称在 doc 对象中作为属性或类似的东西,但这里似乎不是这种情况,我在文档中找不到任何关于此的内容。我在这里有什么遗漏或做错了吗?

0 投票
3 回答
11054 浏览

javascript - PDFJs Viewer.html 变成一个 div

有谁知道 pdf.js ( http://mozilla.github.io/pdf.js/web/viewer.html ) 中的 viewer.html 是否可以放在<div>?.

或者更好的是,转换为 AngularJs 指令(我知道 Angular 有几个 pdfjs 指令,但没有一个具有 viewer.html 的质量)。