我正在尝试使用FPDI合并两个文件 ,我得到的错误是:'TCPPDF 错误:文件已加密!',但是,文件未加密,至少文件是可打印的、可查看的等,并且不需要密码。
我想合并两个文件:
http://www.nps.org.au/__data/cmi_pdfs/CMI7412.pdf http://www.nps.org.au/__data/cmi_pdfs/CMI6656.pdf
在我将文件复制到服务器并将文件名存储在具有绝对文件路径的数组($files)中之后,我的代码是:
if (count ($files) > 0 )
{
$pdf = new FPDI();
$pdf->setPrintHeader(FALSE);
$pdf->setPrintFooter(FALSE);
foreach ($files as $file)
{
for ($i = 0; $i < count($files); $i++ )
{
$pagecount = $pdf->setSourceFile($files[$i]);
for($j = 0; $j < $pagecount ; $j++)
{
$tplidx = $pdf->importPage(($j +1), '/MediaBox');
$specs = $pdf->getTemplateSize($tplidx);
if ( $specs['h'] > $specs['w'] )
{
$orientation = 'P';
}
else
{
$orientation = 'L';
}
$pdf->addPage($orientation,'A4');
$pdf->useTemplate($tplidx, 0, 0, 0, 0, TRUE);
}
}
$output = $pdf->Output('', 'S');
foreach ( $files as $file )
{
delete_file($file);
}
}
我也尝试使用 ghostscript 合并文件,但没有运气。我尝试了 acrobat pro,它需要一个文件的密码,但是当我使用 mac preview 时,我导出了文件并能够使用 acrobat 合并它而没有问题。即 mac preview 删除了没有问题的保护。那么,CMI7412.pdf 文件停止合并但不能导出、查看、打印的原因是什么?我怎样才能绕过它?