当前位置: 首页 > 知识库问答 >
问题:

在PDF文档中创建签名字段

夹谷英奕
2023-03-14

我必须创建一个PDF文件,其中我使用PDFmake来实现这一点。但PDFmake不具备在文档中添加签名字段的功能。

因此,我打开了一个带有签名字段的示例PDF,并复制了包含签名字段名称的对象:

2 0 obj
<</F 4/Type/Annot/Subtype/Widget/Rect[294 465 470 420]/FT/Sig/DA(/Helv 0 Tf 0 g)/T(Signature2)/P 2 0 R>>
endobj

共有1个答案

解鸿运
2023-03-14
2 0 obj
<</F 4/Type/Annot/Subtype/Widget/Rect[294 465 470 420]/FT/Sig/DA(/Helv 0 Tf 0 g)/T(Signature2)/P 2 0 R>>
endobj

最后一个条目/P 2 0 r不合适:P的值应该是对与此注释关联的页面对象的间接引用。但显然字段对象本身是object2.0,显然不是页面对象。

因此,将P值更改为指向所讨论的page对象。或者完全删除它,对于表单字段小部件批注,它是可选的。

您可能考虑或尚未考虑的其他细节:

    null

您谈到在文档之间复制和粘贴PDF对象。如果你无意中在文本编辑器中复制和粘贴,要特别小心!确保您的编辑器能够应付任意的文件内容(甚至是非文本内容),并且不会损坏它们。并明确更新交叉引用表或流以匹配编辑所影响的偏移量更改。

 类似资料:
  • 主要内容:创建一个空的PDF文档,实例现在让我们了解如何使用PDFBox库创建PDF文档。 创建一个空的PDF文档 可以通过实例化类来创建一个空的PDF文档。使用这个类的方法将文档保存在所需的位置。 以下是创建一个空的PDF文档的步骤。 第1步: 创建空白文档 包中的类是PDF文档的内存中表示形式。 因此,通过实例化这个类,可以创建一个空的,如下面的代码块所示。 第2步: 保存文档 创建文档后,需要将此文档保存在所需的路径中,可以使用

  • 现在让我们了解如何使用PDFBox库创建PDF文档。 创建空PDF文档 您可以通过实例化PDDocument类来创建空PDF文档。 您可以使用Save()方法将文档保存在所需的位置。 以下是创建空PDF文档的步骤。 第1步:创建一个空文档 属于包org.apache.pdfbox.pdmodel的PDDocument类是PDFDocument的内存中表示形式。 因此,通过实例化此类,您可以创建一个

  • 请原谅我!我在爪哇很穷。 我错在哪里请指正,差在哪里请改进! 我正尝试使用PDFBox对动态创建的pdf进行数字签名,并使用以下程序: 程序中的任务: (i)创建模板PDF (ii)更新ByteRange、xref、startxref (iii)构造用于签名创建的原始文档 (iv)创建分离式信封数字签名 (v)通过连接原始文档第一部分、分离式签名和原始PDF第二部分来构造数字签名的PDF文档 观察

  • 我在这里读到了关于saveIncremental是如何工作的,我的最终结果需要类似于这里,我已经成功地基于签名字段本身创建了具有多重可视化的可见签名(与响应中的情况不同,但响应对我帮助很大)。为了详细说明标题,我目前的基本任务是在已经签名的文档上创建一个空签名字段,而不中断现有签名。但是,这里的示例不适用于saveIncremental。我在主函数的末尾添加了以下片段(改编),但没有结果: 生成的

  • 我正在尝试向现有的数字签名pdf(认证签名)中添加一个空签名字段。 我有一个工作流,其中许多用户将签署该文档(批准签名),该文档创建时带有“n”个空签名字段,每个用户一个,我们的应用程序首先应用一个不可见的认证签名,然后每个用户可以在各自的字段中签署该文档,但由于工作流中意外的更改,其他用户可能希望签名,因此,我们希望添加相应的空签名字段,然后应用签名。 我试图将空字段(带有单元格事件的表)添加到

  • 我在用iText7做游戏。净c#。我正在尝试在内存中创建一个多页PDF文档(n页数),其中源PDF文档只包含一页。 我可以用一页创建一个新文档,但无法根据需要创建额外的页面。我试过了 但我得到了一个ArgumentOutOfRange例外。。。索引超出范围。。。等 我试图关闭destPdfDoc,然后重新打开它,认为第二页直到我关闭它才被写入。但是当第二次打开destPdfDoc时,它没有页面。我