用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;
                }
            }
        }
    }
}
相关推荐
没有bug.的程序员几秒前
CI/CD 流水线的物理级崩塌:Spring Boot 镜像从 1.2G 暴降至 200M 的 Docker 底层大重构
java·spring boot·ci/cd·docker·重构
bcbobo21cn5 分钟前
C#引用类型学习
开发语言·c#·值类型·引用类型
荪荪6 分钟前
“快速入门ROS2与C++”的实战计划
java·开发语言·c++
薛不痒10 分钟前
大模型agent
java·开发语言
左左右右左右摇晃12 分钟前
Java并发——CAS(比较并替换)
java·开发语言·jvm
郝学胜-神的一滴16 分钟前
深度拆解Python迭代协议:从底层原理到核心实践,解锁异步编程的基石
java·网络·python
码云数智-大飞17 分钟前
前端性能优化实战:如何大幅减少应用加载时间?
java
Memory_荒年17 分钟前
SpringBoot 3.x 新特性:让代码自己“996”,你准时下班!
java·后端·spring
天下无敌笨笨熊24 分钟前
C#异步开发探微
开发语言·c#
后端AI实验室24 分钟前
等保三级整改,敏感数据加密,数十个系统——3个人用Cursor一周搞定了
java·ai