基于C#从PDF文档中提取文本

在PDF文档中,内容通常由文本形成。如果读者认为内容对他们有用或者可以作为模板,他们可能需要从PDF中提取文本并保存为其他格式文档。

Spire.PDF为用户提供从PDF文档中提取文本并将文本保存为txt的功能。该程序指南演示了如何通过Spire.PDF轻松快速地使用C#/ VB.NET提取文本的方法。

第1步:加载PDF文档

声明一个新的PDF文档,然后使用document.LoadFromFile()方法获取我们要提取文本的文档。传递给此方法的参数是文件名字符串。

[C#]

PdfDocument document = new PdfDocument();
document.LoadFromFile(@"E:\work\C pointer.pdf");

 

第2步:从PDF中提取文本

声明一个新的StringBuilder内容,它代表一个可变的字符串。然后,使用content.Append()方法在StringBuilder中附加PDF中的提取文本。在此示例中,从第一页提取文本。

[C#]

StringBuilder content = new StringBuilder();
content.Append(document.Pages[0].ExtractText());

第3步:保存并启动提取的文本

定义文件名字符串。然后,使用File.WriteAllText()方法创建一个新文件并在其中写入指定的字符串然后关闭文件。传递给它的参数是文件名字符串和内容字符串。最后,启动此保存的文件。

[C#]

String fileName = "TextFromPDF.txt";
File.WriteAllText(fileName, content.ToString());
System.Diagnostics.Process.Start("TextFromPDF.txt");

 

注意:如果要从所有页面中提取文本,请使用以下句子。

[C#]

foreach (PdfPageBase page in document.Pages)
{
  content.Append(page.ExtractText());
}

 

有效的Screeshot:

Spire.PDF是一个PDF文档创建组件,使您的.NET应用程序无需使用Adobe Acrobat即可读取,编写和操作PDF文档。现在,新版本增加了Silverlight平台,使其更加强大。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然可以!你可以使用C#编写一个程序来PDF文件文本信息。下面是一个简单的示例代码: ```csharp using System; using PdfSharp.Pdf; using PdfSharp.Pdf.IO; using PdfSharp.Pdf.Content; using PdfSharp.Pdf.Content.Objects; namespace PDFTextExtractor { class Program { static void Main(string[] args) { string pdfFilePath = "path_to_your_pdf_file.pdf"; // 打开PDF文件 PdfDocument document = PdfReader.Open(pdfFilePath); string text = ""; // 遍历每一页 for (int pageNumber = 0; pageNumber < document.Pages.Count; pageNumber++) { // 获取当前页的内容 CObject content = ContentReader.ReadContent(document.Pages[pageNumber]); // 提取文本内容 foreach (var item in ExtractText(content)) { text += item.Text; } } Console.WriteLine(text); } // 递归提取文本内容 static private CObject[] ExtractText(CObject obj) { if (obj is COperator) { COperator op = (COperator)obj; if (op.OpCode.Name == OpCodeName.Tj.ToString() || op.OpCode.Name == OpCodeName.TJ.ToString()) return op.Operands; } if (obj is CSequence) { CSequence seq = (CSequence)obj; foreach (CObject item in seq) { CObject[] result = ExtractText(item); if (result != null) return result; } } return null; } } } ``` 请确保你已经安装了 `PdfSharp` 库,并将 `path_to_your_pdf_file.pdf` 替换为你要提取文本PDF文件的路径。 这个程序将遍历PDF文件的每一页,并提取文本内容。最后,将提取到的文本打印到控制台上。你可以根据自己的需求进行进一步的处理和使用。 希望对你有所帮助!如果有任何问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值