gpt4 book ai didi

java - 如何解决 pdf header signature not found 错误?

转载 作者:搜寻专家 更新时间:2023-10-30 19:56:28 25 4
gpt4 key购买 nike

我在我的 java 程序中使用 iText 来编辑现有的 pdf。生成的 pdf 无法打开,它显示 pdf header 签名未找到错误。我正在使用相同名称的输入和输出文件。

private static String INPUTFILE = "/sample.pdf";
private static String OUTPUTFILE = "/sample.pdf";
public static void main(String[] args)
throws DocumentException,
IOException
{
Document doc = new Document();
PdfWriter writer = PdfWriter.getInstance(doc,new FileOutputStream(OUTPUTFILE));
doc.open();
PdfReader reader = new PdfReader(INPUTFILE);
int n;
n = reader.getNumberOfPages();
System.out.println("No. of Pages :" +n);
for (int i = 1; i <= n; i++)
{
if (i == 1)
{
Rectangle rect = new Rectangle(85,650,800,833);
PdfFormField pushbutton = PdfFormField.createPushButton(writer);
pushbutton.setWidget(rect, PdfAnnotation.HIGHLIGHT_PUSH);
PdfContentByte cb = writer.getDirectContent();
PdfAppearance app = cb.createAppearance(380,201);
app.rectangle(62,100,50,-1);
app.fill();
pushbutton.setAppearance(PdfAnnotation.APPEARANCE_NORMAL,app);
writer.addAnnotation(pushbutton);
PdfImportedPage page = writer.getImportedPage(reader, i);
Image instance = Image.getInstance(page);
doc.add(instance);
}

最佳答案

然后尝试先将输入文件重命名为.bak,然后读取.bak,写入.pdf。这可能会给出错误是与读取还是写入有关的线索。

Itext 不是一个单独的 API,而是几个混合在一起的 API。有时很难。我做了:

同时关闭 PdfReaderFileInputStream

同时关闭 DocumentPdfWriter

关于java - 如何解决 pdf header signature not found 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8655027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com