私は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));
}