编辑:
我再次改变了我的问题:
我正在使用this库来处理PDF文件。
我正在使用此代码将输出提供给浏览器:
#!perl
use strict;
use warnings;
use lib "..\\mymodules\\CAM-PDF-1.57\\lib";
use CAM::PDF;
my $pdf = CAM::PDF->new('doc1.pdf');
# append the other file
my $anotherpdf = CAM::PDF->new('doc2.pdf');
$pdf->appendPDF($anotherpdf);
print "Content-Type: application/pdf\n";
print "Content-Disposition: inline\n\n";
print "Content-Transfer-Encoding: binary\n";
print "Accept-Ranges: bytes\n\n";
$pdf->output();
结果:
我只获得浏览器中加载的第一个pdf文件。
问题解决了:
我必须在$pdf->clean();
命令之前添加$pdf->output();
,它完美无缺。 :)
答案 0 :(得分:0)
你说没有TEMP变量,但你的代码使用它:
$pdf->cleanoutput($ENV{"TEMP"} . '\\out1.pdf');
尝试将其设置为某个值(我假设您使用的是Windows)
$ENV{'TEMP'}='c:\tmp';
mkdir($ENV{'TEMP'});
die "$ENV{'TEMP'} not exists" if ! -d $ENV{'TEMP'};
$pdf->cleanoutput($ENV{"TEMP"} . '\\out1.pdf');
为什么在某些路径中使用//?喜欢:使用lib“.. \ mymodules \ CAM-PDF-1.57 \ lib”;在使用中,lib语句总是使用完整路径。