1

我是 perl 新手,我正在尝试使用CAM::PDF以下代码读取 pdf 文件:

当我尝试在命令提示符下运行它时,出现以下错误:

“在 C:/Strawberry/perl/site/lib/CAM/PDF.pm 第 667 行添加了未初始化的值 <+> ...在 C:/Strawberry/perl/site/lib/CAM/ 的 str 之外的 substr PDF.pm 第 657 行 ...(最后)...“对文件中位置 0 的对象 60 的错误请求无法在 C:...的未定义值上调用方法“getPageContentTree”

奇怪的是,我在一台运行良好的单独计算机上拥有完全相同的文件和程序。它可以完美地打印这台计算机无法打印的所有内容。

我试过重新安装 CAM::PDF 并重新安装cpan. 由于某种原因,重新安装实际上也失败了。谢谢您的帮助。

#!/usr/bin/perl

use strict;
use warnings;

use CAM::PDF;
use CAM::PDF::PageText;

#in cmd: courts.pl samplePDF.pdf

my $filename = shift || die "Supply pdf on command line\n";

my $pdf = CAM::PDF->new($filename);


#print text_from_page(1);

my $string = text_from_page(1);
#print $string;

$string =~ s/\b \b//g;
print $string;

open(my $fh, '>', 'reports.txt');
print $fh "$string";
close $fh;
print "done\n";

sub text_from_page {
my $pg_num = shift;

return
CAM::PDF::PageText->render($pdf->getPageContentTree($pg_num));
}
4

0 回答 0