3

PDFファイルの内容を読み込もうとしています。これがコードです

 4 use warnings;
 5 use strict;
 6
 7 use PDF;
 8
 9 print "*" x 30, "\n";
10 my $filename = shift;
11 print "Filename: $filename\n";
12
13 my $pdf = PDF->new($filename);

これは出力です:

******************************
Filename: Calabasas, LA County June 2012 monthly-new-projects-report.pdf
Can't read cross-reference section, according to trailer

私がグーグルをサーフィンしていると、これは何らかの形でファイルの破損に関連していることがわかります。それでも、pdfリーダーで開くことができます。

別の Perl モジュールを試す必要がありますか、それともコードが壊れていますか?

4

1 に答える 1

0

これがあなたが探しているもの (純粋な perl ソリューションまたは Windows ソリューション) かどうかはわかりませんが、Unix では「pdftotext」を呼び出して変換を行い、ファイルを読み取ります。

open IN, '-|', '/usr/bin/pdftotext', $file, '-' 
    or die "couldn't open $file $!\n";

それが役に立てば幸い!

于 2012-08-16T14:05:47.910 に答える