我如何使用C#来分割一个损坏的pdf文件?

问题描述 投票:0回答:1

我试图将一个'n'页的pdf文件分割成'n'数量的pdf文件,每个文件在".net "中包含1页。对于正常的pdf文件,PDFSharp工作正常,但对于损坏的文件,它显示出错误。

当我使用Adobe Reader和 "另存为 "的文件,新的文件是未损坏的。但我不想手动操作。我试着在Adobe Reader中使用 "Process "打开pdf,但如果不手动保存,就无法从那里保存。如果我使用其他的DLLs,工作就会完成,但它会添加水印。

打开PDF文件时出现的错误。

  • "XRef表中的无效条目,ID=9,生成=0,位置=0,引用对象的ID=1,引用对象的生成=0"
  • {"在PDF流中出现意外字符'0xffff'。该文件可能已损坏。如果你认为这是PDFsharp中的一个错误,请将你的PDF文件发送给我们。"}。
  • 对象已经在使用中的异常。

对于经由过程处理损坏的文件,我试过这个。

Process p = new Process();
p.StartInfo.FileName = file;
p.Start();
p.Close();
corrupt = true;
inputDocument = PdfReader.Open(file, PdfDocumentOpenMode.Import);
c# .net pdfsharp
1个回答
0
投票

处理一个损坏的文件优雅地是不简单的任务。你需要对文件格式有深入的了解。大量的例子说明了其他损坏的实现中可能出现的问题。以及针对每种类型的错误恢复解析的策略。

如果没有一个很好的pdf库已经具备这些功能,你在这里是找不到的。

© www.soinside.com 2019 - 2024. All rights reserved.