2
#!/perl/bin/perl -w
use CAM::PDF;
use CAM::PDF::PageText;

$filename = "test.pdf";

my $pdf = CAM::PDF->new($filename);
my $pageone_tree = $pdf->getPageContentTree(2);
$text = CAM::PDF::PageText->render($pageone_tree);
#$text =~ s/regex/modify/gi;
print $text;

使用上面的代码,我可以将 pdf 数据提取到文本文件中,但我只能得到一页。我想在我的 pdf 中获取每一页。

我知道它在包含的行中

my $pageone_tree = $pdf->getPageContentTree(2);

我不确定如何更改它。我什至尝试过(1..200),它只给了我第一页。有人熟悉使用 CAM::PDF 吗?

4

1 回答 1

4

这适用于我需要的东西。

use CAM::PDF;
use CAM::PDF::PageText;
$filename = "test.pdf";

my $pdf = CAM::PDF->new($filename);
for my $page (1..$pdf->numPages) {
my $pageone_tree = $pdf->getPageContentTree($page);
$text = CAM::PDF::PageText->render($pageone_tree);
print $text;

}

numPages 函数从 pdf 中获取页数。

于 2015-02-19T17:03:36.423 回答