问题标签 [pdfium]

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 回答
130 浏览

pdf - 在不同 PDF 查看器中具有不同输出的 PDF(带阴影)

考虑以下 PostScript 文件

考虑一下我们使用 GhostScript (ps2pdf) 或 Adob​​e Distiller 将该文件转换为 PDF。

生成的 PDF 在不同的 PDF 查看器中呈现方式不同:

  • 在 Adob​​e Reader 或 Firefox(使用 PDF.js)中,我们有一个平行四边形(不是矩形)。
  • 在 SumatraPDF(使用 MuPDF)和 Chrome(使用 PDFium)中,我们有一个矩形。

谁是对的?

0 投票
0 回答
84 浏览

c# - 网络打印机忽略以编程方式发送的副本数量

设置 - 本地 Windows 10 PC 安装了多台网络打印机。GUI C# WinForm 应用程序 (.NET) 在后台持续运行,偶尔会从预定义的 URL 下载 PDF 文件(从 *.ini 文件中读取)。

打印上述 PDF 文件时会出现问题。打印机不接受从应用程序发送的副本数,而是继续打印文件的一份副本。

这是我的代码的相关部分:

从未触发异常,每次尝试打印都会成功。在满足条件时也会更改 if/else 中的副本数,并且MessageBox.Show()代码的部分确实会立即显示预期的副本数(2、3、7,除了 1 之外的任何值,当它不应该是 1 时)在调用printDocument.Print().

我还尝试过从其他各种程序(MS Word、各种自定义应用程序、PDF 阅读器等)打印不相关的文档,副本数一直是 1。但是,像 Google Chrome 或 FireFox 这样的软件可以打印出来在指定的份数中。

我在想,打印机的设置可能会导致它忽略发送的份数。基于这个假设,我检查了所有打印机的设置,发现份数实际上设置为 1。

如果这确实是我的问题的原因,我该如何绕过该设置(而不实际更改它),Google Chrome 和 Firefox 似乎能够做到这一点?我知道我可能会以编程方式更改该限制(将其设置为我的份数,然后在打印完成后将其更改回原始值),但这似乎不是正确的做法.

编辑

我通过包含一个打印对话框来扩展我的代码,如下所示:

尽管如此,结果是相同的——即使用户在打印对话框中更改了份数,打印机也会忽略它们。相同的代码在另一台(本地)打印机上测试,连接到不相关的 Windows 10 PC,并且对话框中的副本数量没有被忽略。

我还注意到我的应用程序中的打印对话框和 notepad.exe 中的打印对话框不同(下图)。有没有办法让我调用 notepad.exe 使用的相同打印对话框?我想这样做的原因是因为完成了工作(打印对话框中的 xy 份数,打印的 xy 份数)。

在此处输入图像描述

0 投票
0 回答
72 浏览

pdf - 没有 pdf.js 或任何其他外部模块的电子应用程序中的自定义 pdf 查看器?

Electron建立在Chromium项目之上,该项目已经具有使用pdfium查看pdf文件的功能。

我期待铬的 pdf 查看功能可以从pdf.js 之类的电子中使用,但我在https://www.electronjs.org/docs或互联网上找不到任何文档。

如何在没有pdf.js或任何外部模块的电子应用程序中创建自定义 pdf 查看器?

0 投票
1 回答
76 浏览

pdf - 什么是&XFDF 中的元素?

我正在从事一个专注于 PDF 注释的 RnD 项目。注释共享、备份等。我在其他 XFDF 创建应用程序中看到了这几行代码。

有人可以解释一下 XFDF 中这些行的定义吗?任何帮助深表感谢。

0 投票
0 回答
54 浏览

adobe - 无法从 pdfium 中的 abobe pdf 获取突出显示颜色

我使用 pdfium 查看 pdf 文件并与之交互(C++ 与 Qt 项目)。当我尝试获取在 Adob​​e Acrobat Reader 中创建的突出显示文本的颜色时,我没有得到有效的颜色。我得到了这个突出显示的文本的评论,还有位置。

当我使用 Foxit Reader 创建这个亮点时,一切正常。

这就是我尝试获取颜色的方式:

在pdfium注解的头文件中注明:

在已定义外观流的注释上调用时失败;而是使用 FPDFPath_Get{Stroke|Fill}Color()。

但它不起作用。也许我需要直接访问外观流?

0 投票
0 回答
49 浏览

pdfium - 使用 Pdfium SDK 支持交互式 PDF 文件

我的应用程序使用 PDFium SDK 将 PDF 渲染到内存,然后将其用作 DirectX 纹理,并且效果很好。我遇到了交互式 PDF 的示例(https://www.brightcarbon.com/wp/wp-content/uploads/2017/05/BrightCarbon-Interactive-PDF.pdf),想知道 PDFium 是否支持此功能?我无法找到任何将鼠标向上/向下/移动事件注入页面的参考 - 只是FORM_OnMouseMove(...)它需要一个FPDF_FORM句柄,所以我认为这是用于处理表单字段。

有人知道吗?

0 投票
1 回答
776 浏览

linux - Dotnet Core:在 Linux 上使用 PDFium 将 Pdf 转换为 Image 得到 DllNotFoundException

我尝试使用 pdfium 将 pdf 转换为 linux 中的图像。但收到此错误:

这是我的源代码:

这是 csporj:

这是 docker-compose 文件:

该程序可以使用以下命令运行: docker-compose run --rm app

我尝试了其他库,例如“PDFium.LinuxV2”或“PDFium.Linux.x64”而不是“PDFiumCore”,但没有进行任何更改。

0 投票
0 回答
68 浏览

google-chrome - 如何访问有关 Google Chrome 无法加载 PDF 的调试信息?

我生成了一个可以在 Firefox、Okular、Evince、iOS Safari 和 Adob​​e Reader 中正确加载的 PDF,并且还在此处此处的多个 PDF 验证器中验证为 PDF/A-3b 。

但它不会在 Chrome 中打开:

我知道以前的问题,例如Failed to load PDF document in Chrome,但那里的答案没有帮助。因此,这个问题与我的特定 PDF 无关,而是关于如何从 Chrome 获取更多信息,这可能有助于我调试情况。

0 投票
0 回答
157 浏览

android - Pdf书签在Bartekc Android Pdf库中不起作用

书签在 Barteksc Pdf 库中不起作用

我目前正在为我的 Android 应用程序使用Barteksc Pdf 库(v.3.1.0-Beta)。但是,Barteksc Pdf 库不支持 Pdf Bookmarks。当我单击我的 android 应用程序上的书签时,它没有任何响应。但是 chrome 使用的 Pdfium 与Bookmarks完美配合。如果有人知道任何支持 Pdf 书签的 Pdfium 库。请与我分享!

提前致谢!

编辑:

这就是 Chrome 打开交互式 Pdf 的方式

(当,单击我的 Pdf 的书签。它有效!)

这就是 Chrome 支持 Pdf 书签的方式!

0 投票
1 回答
189 浏览

c# - PDFium,pdf中提取的图像损坏但渲染时没有问题

我想以 pdf 格式提取图像,当我得到原始字节图像时,图像被“找不到适合完成此操作的成像组件”损坏。我在文件中写入字节并使用 Windows 图像查看器和图像魔术进行测试,但仍然损坏。但任何 pdf 查看器都可以显示它。甚至我可以使用 pdfium 从中获得渲染位图。

可以毫无问题地提取pdf中的其他图像。