当前位置:  编程技术>.net/c#/asp.net

c#实现将pdf转文本的示例分享

    来源: 互联网  发布时间:2014-10-29

    本文导语:  如何解析PDF文件在.NET中从PDF文件里提取文本的几种主要方法有: 1、Microsoft 的 IFilter 接口 和 Adobe 的 IFilter 实现; 2、iTextSharp; 3、PDFBox。 不幸的是这些 PDF 解析方案都不完美。我们将在下面讨论这些方法。 Adobe PDF IFilter 为了使...

如何解析PDF文件

在.NET中从PDF文件里提取文本的几种主要方法有:

1、Microsoft 的 IFilter 接口 和 Adobe 的 IFilter 实现;

2、iTextSharp;

3、PDFBox。

不幸的是这些 PDF 解析方案都不完美。我们将在下面讨论这些方法。

Adobe PDF IFilter

为了使用 IFilter 接口来解析 PDF 文件,你需要:

Windows 2000 或者后续版本

Adobe Acrobat 或 Reader 7.0.5+ (或单独的 Adobe PDF IFilter [adobe.com])

IFilter COM 封装类 [dotlucene.net]

样例代码:

代码如下:

using IFilter;
public static string ExtractTextFromPdf(string path) {
  return DefaultParser.Extract(path);
}

缺点:

使用了不可靠的 COM 互操作来处理 IFilter 接口 (并且组合 IFilter COM、 Adobe PDF IFilter 特别麻烦)。

需要在目标系统上单独安装 Adobe IFilter。如果你需要对其它人发布可索引的解决方案,会很痛苦。

iTextSharp
iTextSharp(http://sourceforge.net/projects/itextsharp/) 是一个 Java 的PDF 操作库iText(http://itextpdf.com/) 的.NET输出。它主要着眼于编辑PDF而不是阅读,但它当然也支持从PDF中提取文本(尽管有点大材小用)。

例程:

代码如下:

using iTextSharp.text.pdf;
using iTextSharp.text.pdf.parser; 
public static string ExtractTextFromPdf(string path)
{
  using (PdfReader reader = new PdfReader(path))
  {
    StringBuilder text = new StringBuilder();

    for (int i = 1; i

    
 
 

您可能感兴趣的文章:

  • c#通过委托delegate与Dictionary实现action选择器代码举例
  • C#实现获取枚举中元素个数的方法
  • C#实现自定义双击事件
  • C#键盘输入回车键实现点击按钮效果的方法
  • C#实现获取一年中是第几个星期的方法
  • C#实现Datatable排序的方法
  • C#实现装箱与拆箱操作简单实例
  • 解决C#中WebBrowser的DocumentCompleted事件不执行的实现方法
  • C#下实现创建和删除目录的实例代码
  • 使用C#实现在屏幕上画图效果的代码实例
  • C#实现过滤html标签并保留a标签的方法
  • c#实现TextBox只允许输入数字
  • C# Winform 整个窗口拖动的实现代码
  • c# ListView实现双击Item事件的变通方法
  • C#实现随鼠标移动窗体实例
  • C#中的FileUpload 选择后的预览效果具体实现
  • C# 窗体隐藏及任务管理器中禁止关闭的实现代码
  • C#的锯齿数组以及C++实现代码
  • C#格式化文件大小的实现代码
  • C#怎样才能实现窗体最小化到托盘呢?
  • C# char类型字符转换大小写的实现代码
  • 基于DIV+ul+li实现的表格(多示例)
  • python实现绘制树枝简单示例
  • c语言实现MD5算法完整代码示例
  • ThinkPHP实现事务回滚示例代码
  • 使用libpcap实现抓包程序的步骤及代码示例
  • 修改.htaccess实现301域名重定向示例分享
  • c++实现MD5算法代码示例
  • php实现数组筛选奇数和偶数示例
  • java Servlet实现Session创建存取以及url重写代码示例
  • python实现倒计时的示例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问html中的文本输入框中如何实现静态的不可修改文本
  • 急问:怎么将一个文本文件平均拆分成10个文本文件?在shell里面怎么实现?谢谢
  • 如何实现redhat linux下的文本编辑器text editor里面的内容拷贝到netscape中的文本编辑器中
  • jQuery实现textarea文本框半透明文本提示效果
  • 如何实现点击一个按钮,在文本框中显示?
  • java开源软件 iis7站长之家
  • 如何用Java实现二进制文件到文本文件的相互转化?
  • 如何实现动态刷新文本框?
  • 怎样在Linux实现文本模式的直接写屏?
  • 在linux命令如何实现文本替换?
  • 用css实现隐藏文本框
  • 如何用java实现将数据库中的image类型数据导出到文本文件。并导入(高分求救!!)
  • jquery 实现文本框焦点自动跳转
  • 类似于Shell界面下setup命令的文本模式菜单用C语言如何实现
  • jQuery实现回车键(Enter)切换文本框焦点的代码实例
  • ^v^~~~~求助:如何用javaBean实现在图象上增加文本,或把图象的像素存入数组。
  • 请教在文本文件中查找一字符串并定位流的位置,如何实现较快?
  • sed可以实现在文本中按特定位置添加字符吗?
  • jquery 实现文本框textarea中ctrl+enter提交表单的方法
  • 用python实现的去除win下文本文件头部BOM的代码
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • socket实现多文件并发传输,求助多线程实现问题?
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • interface 到底有什么用???实现接口,怎么实现??
  • 通过javascript库JQuery实现页面跳转功能代码
  • 怎么用Jsp实现在页面实现树型结构?
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • windows 下的PortTunnel 在linux下怎么实现?或者相应的已经实现的软件?端口映射
  • php实现socket实现客户端和服务端数据通信源代码
  • 网站重定向用C语言实现iptables,ACL实现
  • flash AS3反射实现(describeType和getDefinitionByName)




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3