2

1つのPDFテンプレートに複数回入力し、結果を連結する必要があります。私が複数と言うとき、私は最大で数百回、潜在的には千回を超えることを意味します。

これをpdftk fill_form1つずつ実行してから、を使用できますpdftk cat。これはかなり簡単に並列化できます。

これが唯一のオプションなのか、それとも「このテンプレートとこれらのフィールドのセットを取得して、このフォームに入力し、ファイルを連結する」ので、すべてを個別に行うことを避けることができます。繰り返しになりますが、何かが存在する場合でも、fork並列化方法を実行するよりも高速ではない場合は、おそらくそれだけの価値はありません。

4

1 に答える 1

1

私の Perl ライブラリCAM::PDFはこれを行うことができます。フォームの入力は少し弱いですが (たとえば、チェックボックスをサポートしていません)、連結はうまく機能します。

#perl -w                                                                            
use strict;
use CAM::PDF;

my $infile = 'in.pdf';
my $outfile = 'out.pdf';
my @fills = (
   { name => 'John' },
   { name => 'Fred' },
);

my $pdf = CAM::PDF->new($infile) or die $CAM::PDF::errstr;
for my $i (0 .. @fills-1) {
   my $filledPDF = $i == 0 ? $pdf : CAM::PDF->new($infile);
   $filledPDF->fillFormFields(%{$fills[$i]});
   if ($i > 0) {
      $pdf->appendPDF($filledPDF);
   }
}
$pdf->cleanoutput($outfile) or die;
于 2011-12-22T17:25:00.333 に答える