问题标签 [openpdf]

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

pdf - 使用 OpenPDF 的 PDF 每一页上的矩形页眉和页脚块

我正在使用 OpenPDF 生成 PDF 发票报告。在 PDF 上,我必须在每一页上为页眉/页脚设置一个矩形块。我已经使用HeaderFooter该类在每个页面上添加页眉/页脚,但这仅适用于Phrase.

有没有办法使用HeaderFooter类为页眉/页脚设置一个具有高度和宽度的矩形块?

这是我对每一页的期望:

预期产出

0 投票
1 回答
1070 浏览

android - 在现有 PDF 文件中添加文本/注释并在 android 中查看/渲染输出

我正在开发一个pdf 编辑器

我已经使用基于 iText的OpenPDF核心对 pdf 文件进行了更改

我正在使用AndroidPdfViewer查看 Pdf 文件

我的问题是:

  1. 将文本或标签或图标等新注释添加到现有 pdf 文件中。已解决

  2. 在将注释添加到 pdf 文件后立即显示新更改。已解决

  3. 将用户点击转换为 Pdf 文件坐标,以根据用户点击的位置添加新的注释。

  4. 在添加的注释上获取点击事件并读取添加到该注释中的元数据,例如:读取在图标注释上设置的标签哈希 id。已解决

  5. 从 PDF 文件中删除添加的注释。

任何帮助表示赞赏

更新

==================================================== =======================

解决方案 1:添加注释

  • 这是我在现有 pdf 文件中添加图标注释的代码片段。

解决方案 2:显示新更改

  • 这是我添加注释后刷新视图的代码片段,我已将其添加到AndroidPdfViewer核心类中。

解决方案 4:单击 pdf 中的对象

我已经创建注释并将其设置为添加的图像对象,AndroidPdfViewer有一个事件处理程序,这是示例

我将在我的问题中添加其他新的解决方案,作为更新部分。

0 投票
1 回答
406 浏览

java - 使用基于 iText Core 的 OpenPdf 从 pdf 页面中删除或更新添加的图像图标

我已经使用基于 iText 核心的OpenPdfPDF在页面中添加了一个图标作为图像对象。这是我的代码

将图标添加到 pdf 页面的模板

现在我需要在用户点击时删除或更新添加的图像对象的颜色,我有返回的点击功能MotionEvent,现在我需要删除或更新或替换添加的图像对象。

任何想法?!

0 投票
1 回答
107 浏览

java - 使用java将文本添加到现有PDF的最后一页

我知道有很多关于如何解决现有 PDF 版本问题的建议,但在所有这些建议中,我找不到解决问题的方法。

我需要在 PDF 的最后一页添加有关文件接受的信息(“Tom Smith 接受的文档,2020-01-01” - 可能的多个接受)。我需要确定页面是否已填满或是否有足够的空间容纳我的文本。我想在 pdf 的最后一页上找到最后一个元素的位置 (y),以根据页面大小检查它。如果页面已满,我将添加一个新页面,然后添加新文本。
我不知道如何解决这个问题。我尝试使用 iText 和 PDFBOX 寻找答案,但没有令人满意的解决方案。

0 投票
2 回答
273 浏览

itext - PdfPCell 上的字体颜色会增加 PDF 文件的大小

我以这种方式创建了一个字体。

然后在带有 Phrase 的 PdfPCell 中使用它。

我在每一页上显示表头。

现在,如果我删除字体颜色,它会生成,PDF file of size 10 MB但是当提供颜色时,它会生成 PDF 文件size 24 MB。PDF文档大约有1400页。

有没有更好的方法来指定 PdfPCell 级别的字体颜色?

除此之外,当我尝试使用它合并这些 pdf 文档时,PdfSmartCopy它需要大约 4 GB 的内存使用量。

我都尝试过iText& OpenPDF

更新:

iText 5.5:

当我使用 iText 5+ 的BaseColor类时,我得到的 pdf 文件大小相同,有或没有字体颜色。

打开PDF 1.3.20

但是 OpenPDF 没有BaseColor类,所以我必须在这里使用Color.WHITE

我们在OpenPDFiText4中是否有BaseColor类的替代品?

更新 2:重现问题的示例用例。

OpenPDF Impl:PDF 文件大小约为 15 MB

iText Impl:PDF 文件大小约为 8.5 MB

0 投票
0 回答
94 浏览

pdf - 使用飞碟 v 9.1.20 生成 PDF 时表格单元格数据折叠

我们正在使用最新版本的飞碟 v 9.1.20,因为当有大量列(例如:80 列)时,表格列会折叠。

我们还为单元格添加了word-wrap: break-word以在需要时分词,并且还使用了table-layout: fixed用于表格。

它在列数较少时起作用,但当列数增加时,该属性不会被应用并且列被折叠。

附上屏幕截图和示例代码。有没有人遇到过这个问题,请告诉我们解决方案。

浏览器视图中的表格 浏览器视图中的表格

使用飞碟生成的 PDF 表格 在此处输入图像描述

HTML 代码

0 投票
2 回答
193 浏览

java - 使用 OpenPDF 居中和格式化文本

我使用 OpenPDF 在 Java 中创建了一个 PDF 文件并插入了一个段落。问题是我想把它放在中间,而不是左边。如何才能做到这一点?

第二个问题:如何在测试中放置具有特定格式的单词?
例如:“Hello and welcome ”(欢迎加粗)

这是我的代码:

0 投票
1 回答
78 浏览

java - 从 OpenPDF 获取溢出文本

我正在尝试设置一个页面,其中文本填充在文本框中,然后溢出到页面上的另一个文本框。我设置了一个矩形并将文本发送给它,但我不知道如何找到不适合的文本。

我记得看到一个向文档(或表格或其他东西)添加单词的功能,它具有“返回剩余文本”功能。我再也找不到那个功能了。

如何获取不适合返回的文本,以便将其分配给变量以发送到下一个文本框?

0 投票
1 回答
73 浏览

java - 如何在不写入文档的情况下获得桌子的高度

PdfPTable#getTotalHeight()方法在写入文档之前返回 0。有没有办法在写入文档之前获得高度?

控制台输出:

0 投票
1 回答
75 浏览

itext - OpenPDF columnText.go 创建损坏的文档

我不断收到错误消息

错误

当我尝试使用 columnText 写入 PDF 时。setSimpleColumn()以前工作正常,但现在这段代码抛出错误,当我尝试使用它时setColumns()它也抛出错误。我想不出是什么导致了错误。我应该以某种方式关闭 columnText 吗?

直接相关的代码是:

如果需要,我会显示更多代码,但我认为其余部分与问题无关。

我真的很难过,我找不到关于这个问题的太多信息。

这是生成的文件: https ://drive.google.com/file/d/135EhLyiyDj6iAexUJ0upRdG6eXHYXVdw/view?usp=sharing

编辑:我忘记了我创建函数setCanvas是为了保存一堆代码,这里是函数:

编辑2:[结合两个功能]

链接: https ://drive.google.com/file/d/1ybvDVSxKOJdbnA2fSRjEmxlDszIktWTL/view?usp=sharing