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

标签 java pdf itext

我在我的 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/

相关文章:

java - hdfs - 获取文件夹错误

java - Android:无法在 Android 中的日历上添加事件

ruby-on-rails - Rails 4-Gem prawn 使用新 Controller 进行 pdf 景观渲染

c# - itextsharp pdf 工作中的 gridview 列宽需要样式

java - iText:带有图像的单元格不适用 Rowspan

java - Android MapsUtils - 在 map 上点击获取位置

objective-c - 如何在 objective-c 中编辑 PDF?

Python图像库无法转换为pdf

c# - PdfTextExtractor 中的 iTextSharp 错误?

java - 如何检测以全屏模式运行的非 Java 程序?