我使用 image magick 和 perl 将 pdf 转换为图像。使用此功能:
sub PDFtoIMAGE
{
foreach my $a (keys %dir) #just using I/O::dir to get full list of files
{
my $file = $a;
printf "$file\n";
if($file=~/\.pdf/ || $file=~/\.PDF/)
{
my $Img = Image::Magick->new;
$Img->Set(density => '300');
print "reading: $file\n";
$Img->read("$path$file");
my ($width, $height, $size, $format)=$Img->Ping("$path$file");
print "$width, $height, $size, $format\n";
$Img->Extent(width=>$width,height=>$height);
$file=~s/\.pdf/\.jpg/;
$file=~s/\.PDF/\.jpg/;
print "creating: $file\n";
$Img->Write("png24:$path$file");
print "created: $file\n";
}
}
}
然后我尝试使用我得到的结果文件作为我尝试使用 PDF::API2 创建的 pdf 的背景图像,但是当我运行我的 PDF::API2 脚本来创建我的 PDF 时,我收到此错误:“无法调用方法 val 上未定义的值 /../Image.pm 第 66 行"。这个错误是指我使用图像魔法创建的文件!
出于某种原因,我在转换 pdf 时创建的一些图像可以正常工作,而有些则不能。我已经在这个问题上花了很多时间......有人可以帮助我吗?