Просто прошивка какого-либо текста в pdf и itextsharp создает поврежденный файл. Когда пытался читать PDF он бросает ошибку следующийItextsharp создает поврежденный pdf-файл после штамповки некоторого текста
Исключения типа Дополнительной информации «» iTextSharp.text.exceptions.InvalidPdfException: Документ не имеет корня страницы (смысл: это неверный PDF).
используется следующий код для редактирования содержимого в формате PDF и печать текста
using (PdfReader pdfReader = new PdfReader(System.IO.File.ReadAllBytes(pdfPath)))
using (Stream pdfStream = new FileStream(pdfPath, FileMode.Open, FileAccess.ReadWrite))
{
PdfReaderContentParser parserReason = new PdfReaderContentParser(pdfReader);
PdfStamper pdfStamper = new PdfStamper(pdfReader, pdfStream);
PdfContentByte pdfContentByte = pdfStamper.GetOverContent(pdfReader.NumberOfPages);
BaseFont baseFont = BaseFont.CreateFont(BaseFont.COURIER_BOLD, BaseFont.CP1250, BaseFont.NOT_EMBEDDED);
pdfContentByte.SetColorFill(BaseColor.BLACK);
pdfContentByte.SetFontAndSize(baseFont, 12);
pdfContentByte.BeginText();
TextMarginFinder finderReason = parserReason.ProcessContent(pdfReader.NumberOfPages, new iTextSharp.text.pdf.parser.TextMarginFinder());
pdfContentByte.ShowTextAligned(PdfContentByte.ALIGN_LEFT, "Some text : " + annotation, finderReason.GetLlx(), finderReason.GetLly() - 20f, 0);
pdfContentByte.EndText();
pdfStamper.Close();
}
файлы PDF создаются с Apache FOP 1.1 и itextsharp используется для редактирования вопрос file.The не происходит со всеми pdf, но только с некоторыми файлами. You can find the PDF which creates the issue here
Проводка PDF, о которой идет речь, также может быть полезна для проверки наличия/отсутствия корневой страницы. – confusedandamused
Спасибо @confusedandamused. Я загрузил файл и обновил свой вопрос по ссылке. –