用C#写一个读取pdf文档内容的库

安装这两个库,第二个库一定要安装否则有些pdf文件读取会出现异常

读取

csharp 复制代码
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf.Canvas.Parser.Listener;

namespace TestReadPdf
{
    public static class PdfHelper
    {
        public static IEnumerable<string> ExtractText(string filename)
        {
            using (var r = new PdfReader(filename))
            using (var doc = new PdfDocument(r))
            {
                for (int i = 1; i < doc.GetNumberOfPages(); i++)
                {
                    ITextExtractionStrategy strategy = new LocationTextExtractionStrategy();
                    string text = PdfTextExtractor.GetTextFromPage(doc.GetPage(i), strategy);
                    yield return text;
                }
            }
        }
    }
}
相关推荐
逝水如流年轻往返染尘1 分钟前
JAVA中的String类
java
一只叫煤球的猫3 分钟前
ThreadForge 1.2.0 发布:让 Java 并发代码更好写,这次补齐了高阶编排、示例与观测能力
java·设计模式·设计
counting money9 分钟前
Spring框架基础(依赖注入-半注解形式)
java·后端·spring
CN-Dust10 分钟前
【C++】for循环例题专题
java·c++·算法
其实防守也摸鱼14 分钟前
带你了解与配置phpmyadmin
笔记·安全·网络安全·pdf·编辑器·工具·调试
njsgcs20 分钟前
solidworks自动标注折弯4 无向图 c#
开发语言·c#·solidworks
染夕陌木23 分钟前
RPC/服务调用框架中“方法无法应用到给定类型”错误的通用排查指南
java·ide·rpc
大大杰哥26 分钟前
String常用方法
java
AI人工智能+电脑小能手43 分钟前
【大白话说Java面试题】【Java基础篇】第20题:HashMap在计算index的时候,为什么要对数组长度做减1操作
java·开发语言·数据结构·后端·面试·哈希算法·hash-index
嵌入式×边缘AI:打怪升级日志1 小时前
嵌入式Linux开发(了解交叉编译工具链的组成)
java·linux·运维