Symptoms
When a PDF file is being processed, the following error occurs:
C:\Build\TeamAgent\_work\1\s\0\OCRT\PdfTools\PdfService\Src\PdfDocument.cpp, 191.
Cause
This error may occur if the PDF file does not conform to the PDF specification, and the PDF header has some data inserted before the %PDF- part of the header.
Resolution
The issue can be resolved by removing the extra data from the PDF file before opening it. It can be done manually via a text editor, or programmatically before loading the file into FineReader Engine.
C# code:
...
IFRDocument frDocument = engine.CreateFRDocument();
// Read the file data as a string
string badImagePath = "bad.pdf";
string badPdfData = System.IO.File.ReadAllText(badImagePath, System.Text.Encoding.Default);
// Find the position of the %PDF- part of the header
int pdfHeaderPos = badPdfData.IndexOf("%PDF-");
// Strip the extra data
string pdfData = badPdfData.Substring(pdfHeaderPos);
// Write the modified PDF data into a file
string imagePath = "good.pdf";
System.IO.File.WriteAllText(imagePath, pdfData, Encoding.Default);
// Load the modified PDF file into FineReader Engine
frDocument.AddImageFile(imagePath);
...
Comments
0 comments
Please sign in to leave a comment.