用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;
                }
            }
        }
    }
}
相关推荐
华清远见成都中心10 分钟前
C 语言内存管理深度解析:malloc/free 与嵌入式堆栈分配策略
java·c语言·算法
YANZ22217 分钟前
亚马逊绿标(CPF):从环保认证到跨境流量新引擎
java·大数据·人工智能·搜索引擎·百度
超梦dasgg21 分钟前
智慧充电系统订单服务Java 实现方案
java·开发语言·微服务
JWASX23 分钟前
【RocketMQ 生产者和消费者】- 事务源码分析(2)
java·rocketmq·java-rocketmq
雪度娃娃31 分钟前
基于TCP的网络词典
网络·c++·tcp/ip·c#
手握风云-31 分钟前
Spring AI:让大模型住进 Spring 生态(四)
java·后端·spring
南滑散修32 分钟前
红黑树-非黑即红
java·开发语言
Java面试题总结38 分钟前
Spring Boot:别再重复造轮子,这些内置功能香麻了
java·spring boot·后端
迷糊小白告1 小时前
Java微服务——SpringCloud
java·spring cloud·微服务
qq_269870431 小时前
java rabbitmq 队列在Springboot的设计
java·rabbitmq·java-rabbitmq