如何从Perl中的PDF文件中提取文本?

前端之家收集整理的这篇文章主要介绍了如何从Perl中的PDF文件中提取文本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用Perl从PDF文件提取文本。我一直在使用pdftotext.exe从命令行(即使用Perl系统功能)从PDF文件提取文本,这种方法工作正常。

问题是我们在PDF文件中有像α,β和其他特殊字符的符号,它们不会在生成的txt文件显示。文本中也随机添加了一些额外的空格。

是否有更好和更可靠的方式从PDF文件提取文本,使文本将包括像α,β等所有符号,文本将完全匹配PDF中的文本(即没有额外的空格)?

解决方法

这些模块可以从pdf中获取提取文本

PDF::API2

CAM::PDF

CAM::PDF::PageText

从CPAN

my $pdf = CAM::PDF->new($filename);
   my $pageone_tree = $pdf->getPageContentTree(1);
   print CAM::PDF::PageText->render($pageone_tree);

此模块尝试从PDF页面提取顺序文本。这不是一个健壮的过程,因为PDF文本以任意顺序图形化显示。该模块使用几个启发式方法来尝试猜测什么文本旁边的其他文本,但可能会被容易地被愚弄,例如,下标,非水平文本,字体的更改,表单域等。

除了这些免责声明外,它可以从简单的PDF文件快速转储文本。

猜你在找的Perl相关文章