我是pdfbox的新手,我想提取一个匹配某些特定单词的段落,我能够将整个pdf提取到文本(记事本),但我不知道如何将特定段落提取到我的java程序中.任何人都可以帮助我至少一些教程或例子.非常感谢你
ipa*_*lic 15
PDF文档中的文本绝对定位.因此,不是单词,行和段落,而是只有绝对定位的字符.
假设你有一个段落:
Neque porro quisquam est qui dolorem ipsum quia dolor sit amet,consectetur,adipisci velit
粗略地说,它会被表示为字符的PDF文件N在某个位置,e有点权的,q,u,e更多的权利,等等.
PDFBox试图猜测角色如何制作单词,行和段落.因此,它会在大致相同的垂直位置寻找很多字符,对于彼此接近且类似的字符组,尝试找到你需要的东西.它通过从整个页面中提取文本然后逐个字符地处理它来创建文本(它也可以尝试从页面内的一个矩形区域中提取文本)来实现.请参阅相应的类PDFTextStripper(或PDFTextStripperByArea).有关用法,请参阅ExtractText.javaPDFBox源代码.
这意味着您无法使用PDFBox轻松提取段落.这也意味着PDFBox在提取文本时有时会错过(有很多非常不同的PDF文档).
您可以做的是从整个页面中提取文本,然后尝试找到您的段落搜索该文本.正则表达式通常非常适合此类任务(通过Pattern和Matcher类在Java中可用,或者在String类上使用便捷方法).
| 归档时间: |
|
| 查看次数: |
10860 次 |
| 最近记录: |