0

我尝试通过 提取 pdf 的文本 iTextSharp.text.pdf.parser.PdfTextExtractor.GetTextFromPage,但由于 pdf 文件相对于内联图片的一些错误格式,它不起作用。

我发现我可以解决这个问题,如果我(A)在 Adob​​e Acrobat 中打开 pdf 并将其保存为优化的 pdf。然后解析将起作用。或者 (B) 我会在 Adob​​e Acrobat 中打开它,然后通过 Adob​​e PDF 再次打印为 pdf。

现在我有 14.000 个这些文件并且想要自动化 (A) 或 (B)。但不知何故,我无法成功。

对于 (A) 我包括了 Adob​​e 库,简而言之就是这样

mApp = new AcroAppClass();
avDoc = new AcroAVDocClass();
avDoc.Open (strFilePath, "");
pdDoc  = (CAcroPDDoc)avDoc.GetPDDoc ();
pdDoc.Save(1, strFilePath.Substring(0, strFilePath.Length - 4) + "_changed.pdf");

但 Adob​​e SDK 不允许我另存为其他格式。

对于 (B) 它尝试了这样的事情:

Process pdfProcess = new Process();
pdfProcess.StartInfo.FileName = @"C:\Program Files (x86)\Adobe\Acrobat 11.0\Acrobat\AcroRd32.exe";
pdfProcess.StartInfo.Arguments = string.Format(@"/t", strFilePathSource, "Adobe PDF", "Adobe PDF", strFilePathTarget);
pdfProcess.Start();

这不会引发任何错误,但也不会产生任何文件。

4

0 回答 0