Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java 8另存为打印到pdf选项_Java_Pdf_Document_Itext7 - Fatal编程技术网

使用Java 8另存为打印到pdf选项

使用Java 8另存为打印到pdf选项,java,pdf,document,itext7,Java,Pdf,Document,Itext7,我正在使用itext7库为pdf文档添加水印。它正在保留层,并显示其中一个签名无效。 我想展平创建的文档 当我尝试使用Adobe打印选项手动保存文档时,它会压平所有签名并使文档成为有效文档。与java程序具有相同的功能 有没有办法使用java程序,我们可以展平pdf文档?根据您选择的标记,您似乎正在使用iText 7 for java iText 7知识库示例解释了如何使用iText 7展平PDF AcroForm表单。关键代码是: PdfDocument pdfDoc=新的PdfDocumen

我正在使用itext7库为pdf文档添加水印。它正在保留层,并显示其中一个签名无效。 我想展平创建的文档

当我尝试使用Adobe打印选项手动保存文档时,它会压平所有签名并使文档成为有效文档。与java程序具有相同的功能

有没有办法使用java程序,我们可以展平pdf文档?

根据您选择的标记,您似乎正在使用iText 7 for java

iText 7知识库示例解释了如何使用iText 7展平PDF AcroForm表单。关键代码是:

PdfDocument pdfDoc=新的PdfDocument(新的PdfReader(SRC)、新的PdfWriter(DEST));
PdfAcroForm form=PdfAcroForm.getAcroForm(pdfDoc,true);
//如果未明确包含任何字段,则所有字段都将展平。
//否则,只展平包含的字段。
form.flattfields();
pdfDoc.close();

https://kb.itextpdf.com/home/it7kb/examples/flattening-a-form
访问2021-05-24)

您使用的是哪一个库?@ram可能。查看是否回答了您的问题在
PDFBox中有一个内置函数可以展平。如果您想以简单的方式完成此操作,您可以导入此库,以便使用
itext7
@ram展平并继续您的其他操作。还有一个用于展平表单字段的内置函数,因此OP可以始终使用iText 7。中的实际问题是,还没有一种方法可以展平任意注释,特别是不是表单字段小部件的注释。谢谢@mkl。解决办法奏效了。。