Я пытаюсь прочитать PDF-файл, скопировать его в новый PDF-файл и добавить в него текст. Мой код приведен ниже. Код сработал, и я получаю новый PDF-файл с новым текстом. Но я получаю эти ошибки и не понимаю их.
```[main] ERROR com.itextpdf.kernel.pdf.PdfReader - Error occurred while reading cross reference table
Cross reference table will be rebuilt. com.itextpdf.io.IOException: Error at file pointer 284,030.
at com.itextpdf.io.source.PdfTokenizer.throwError(PdfTokenizer.java:686)
at com.itextpdf.kernel.pdf.PdfReader.readXrefSection(PdfReader.java:1011)
at com.itextpdf.kernel.pdf.PdfReader.readXref(PdfReader.java:944)
at com.itextpdf.kernel.pdf.PdfReader.readPdf(PdfReader.java:677)
at com.itextpdf.kernel.pdf.PdfDocument.open(PdfDocument.java:1871)
at com.itextpdf.kernel.pdf.PdfDocument.<init>(PdfDocument.java:252)
at com.itextpdf.kernel.pdf.PdfDocument.<init>(PdfDocument.java:234)
at Main.main(Main.java:52)
Caused by: com.itextpdf.io.IOException: file position {0} cross reference entry in this xref subsection.
... 8 more```
Мой код:
try {
//PdfDocument pdfDoc = new PdfDocument(new PdfReader(), new PdfWriter());
PdfDocument pdfDoc = new PdfDocument(new PdfWriter("01last.pdf").setSmartMode(true));
PdfDocument srcDoc = new PdfDocument(new PdfReader("diplome.pdf"));
srcDoc.copyPagesTo(1, srcDoc.getNumberOfPages(), pdfDoc);
Document document = new Document(pdfDoc);
@SuppressWarnings("deprecation")
PdfFont normal = PdfFontFactory.createFont(FontConstants.TIMES_ROMAN);
document.setFont(normal);
Paragraph p = new Paragraph("Esdras ");
Paragraph p2 = new Paragraph("Maxime ");
document.showTextAligned(p, 50, 170,1,TextAlignment.LEFT, VerticalAlignment.MIDDLE,-11);
document.showTextAligned(p2, 300, 170,1,TextAlignment.LEFT, VerticalAlignment.MIDDLE,-11);
pdfDoc.close();
} catch (IOException e) {
e.printStackTrace();
}
Пожалуйста, нужна ваша помощь. Извините за мой англ sh. Я очень стараюсь учиться :)