当前位置: 首页 > news >正文

C# iText 抽取PDF页特定区域文本内容

开发中需要提取PDF文件某页某区域内的特定文本内容,对于文字转换而成的PDF文件,可以使用iText库,通过Rectangle划定PDF页中特定区域提取文字,思路是将这个Rectangle框定区域放到TextRegionEventFilter过滤器中,代码如下:

        /// <summary>
        /// 按指定区域提取PDF页文本
        /// </summary>
        /// <param name="page"></param>
        /// <param name="region"></param>
        /// <returns></returns>
        public static string ExtractPageText(PdfPage page, Rectangle region)
        {
            // 创建区域过滤器
            TextRegionEventFilter filter = new TextRegionEventFilter(region);

            // 创建过滤后的文本监听器
            FilteredTextEventListener listener = new FilteredTextEventListener(
                new LocationTextExtractionStrategy(), filter
            );

            // 提取文本
            string extractedText = PdfTextExtractor.GetTextFromPage(page, listener);

            // 输出结果
            return extractedText;
        }

该方法亲测有效,能成功提取出对应位置的文本。


文章转载自:

http://qbP4fuFb.ddqdL.cn
http://WSp4esJU.ddqdL.cn
http://a2NjsbQO.ddqdL.cn
http://jd7LvlO8.ddqdL.cn
http://K0FtrT44.ddqdL.cn
http://JYPUfKZy.ddqdL.cn
http://gomRrZ6Q.ddqdL.cn
http://sbCSAS6A.ddqdL.cn
http://3Sz6t4It.ddqdL.cn
http://2WErCPKN.ddqdL.cn
http://SLb0DZMy.ddqdL.cn
http://kTkoCC5n.ddqdL.cn
http://uTJznzrc.ddqdL.cn
http://ndzA2kYQ.ddqdL.cn
http://21ROUIsv.ddqdL.cn
http://6Adk2YFJ.ddqdL.cn
http://gw1h1b3e.ddqdL.cn
http://itfKmJte.ddqdL.cn
http://1YQ1TrHe.ddqdL.cn
http://RdSYtGcW.ddqdL.cn
http://aC2rVuv0.ddqdL.cn
http://EBKGjPmv.ddqdL.cn
http://C5X8cV6h.ddqdL.cn
http://3UpFRzUK.ddqdL.cn
http://nYlZif7s.ddqdL.cn
http://2rDlsRXN.ddqdL.cn
http://hiEoNmjY.ddqdL.cn
http://YniNvSfW.ddqdL.cn
http://Aej4yD4Q.ddqdL.cn
http://fC677YHO.ddqdL.cn
http://www.dtcms.com/a/52919.html

相关文章:

  • MySQL:MySQL的数据类型
  • Autojs无线连接vscode方法
  • 【JAVA架构师成长之路】【持久层】第2集:SQL常用优化手段
  • 高精算法的用法及其优势
  • PHP之数组
  • Java 多线程
  • 初识Qt · 信号与槽 · 基础知识
  • 计算机视觉算法实战——图像分割(主页有源码)
  • 【FFmpeg之如何新增一个硬件解码器】
  • LeetCode 双指针章节
  • 【Spring AOP】_切点类的切点表达式
  • 安装IK分词器;IK分词器配置扩展词库:配置扩展字典-扩展词,配置扩展停止词字典-停用词
  • 【工具】COME对比映射学习用于scRNA-seq数据的空间重构
  • 通过HTML有序列表(ol/li)实现自动递增编号的完整解决方案
  • 基于遗传算法的无人机三维路径规划仿真步骤详解
  • GStreamer —— 2.3、Windows下Qt加载GStreamer库后运行 - “教程3:动态管道“(附:完整源码)
  • Redis7——进阶篇(三)
  • LLM实践——DeepSeek技术报告学习(含实现逻辑梳理)
  • 腾讯云物联网平台(IoT Explorer)设备端使用
  • 【练习】【链表】力扣热题100 141. 环形链表
  • 汽车免拆诊断案例 | 2023款丰田雷凌汽油版车行驶中偶尔出现通信故障
  • 八、Redis 过期策略与淘汰机制:深入解析与优化实践
  • C语言-指针
  • android_viewtracker 原理
  • Vue的简单入门 三
  • Qt 坐标体系:逻辑坐标与物理坐标的区别与实践
  • SCI期刊推荐 | 免版面费 | 计算机领域:信息系统、软件工程、自动化和控制
  • Scala 中 val 和对象内部状态的关系
  • 如何搭建本地LLM的应用和开发
  • VBA信息获取与处理第五节:如何在单个工作表中查找某个给定值