PDF не сливается больше, чем версия PDF-1.5, используя mPDF

Я пытаюсь объединить pdf, используя плагин mPDF с последней версией, но ошибка Слияние PDF работает при использовании pdf версии 1.3, но не выполнено для 1.5

Я попробовал код ниже

<?php
$mihir='<html>
<body>
  Generate PDFs with merge
</body>
</html>';    

require_once("MPDF/mpdf.php");
$mpdf=new mPDF(); 
$mpdf->SetDisplayMode('fullpage');
$mpdf->list_indent_first_level = 0; 
$mpdf->WriteHTML($mihir);

$mpdf->AddPage();
$mpdf->SetImportUse();
$pagecount = $mpdf->SetSourceFile("order_form_instructions_energy_supply.pdf");
$tplId = $mpdf->ImportPage($pagecount);
$mpdf->UseTemplate($tplId);
$mpdf->Output('test.pdf','D');
?>

Я получаю эту ошибку

mPDF error: Unable to find xref table - Maybe a Problem with auto_detect_line_endings

заблаговременно

Ответ 1

Я сделал для слияния PDF больше, чем версия 1.5, используя mpdf и сценарий оболочки.

$mihir='<html>
<body>
  Generate PDFs with merge
</body>
</html>';    

require_once("MPDF/mpdf.php");
$mpdf=new mPDF(); 
$mpdf->SetDisplayMode('fullpage');
$mpdf->list_indent_first_level = 0; 
$mpdf->WriteHTML($mihir);


$tmp_dir1='upload_files/tmp_ao_pdf';
if(!is_dir($tmp_dir1))
{
  mkdir($tmp_dir1,0777);
}            
$file_path=$tmp_dir1."/"."generate_html.pdf";
$mpdf->Output($file_path,'F');

$attachh_pdf_name="upload_files/order_form_instructions_energy_supply.pdf";
$fileArray= array($file_path,$attachh_pdf_name);
$datadir = "upload_files/";
$outputName = $datadir."orderform_".$order_id.".pdf";
$cmd = "gs -q -dNOPAUSE -dBATCH -dAutoRotatePages=1 -sPAPERSIZE=legal -sDEVICE=pdfwrite -sOutputFile=$outputName ";
foreach($fileArray as $file) {
    $cmd .= $file." ";
}
$result = shell_exec($cmd);

Ответ 2

Rax: Вы пробовали с разными документами PDF? Это может помочь вам: http://www.vankouteren.eu/blog/2009/07/fpdf-error-unable-to-find-xref-table/

Один из PDF файлов, который должен быть объединен, был первоначально создан из Word от создателя PDF, который поместил свою подпись в свойства документ PDF. После удаления этой подписи (в этом случае открытие PDF с Adobe Illustrator и с сохранением его снова) проблема была решена.

Ответ 3

Предварительно вы можете понизить версию входного файла PDF с помощью утилиты Ghostscript utility.

gs \
  -sDEVICE=pdfwrite \
  -dCompatibilityLevel=1.4 \
  -o order_form_instructions_energy_supply_v1.4.pdf \
     order_form_instructions_energy_supply.pdf

а затем использовать файл пониженной версии в библиотеке mPDF

Ваш сценарий:

<?php
$mihir='<html>
<body>
Generate PDFs with merge
</body>
</html>';    

require_once("MPDF/mpdf.php");
$mpdf=new mPDF(); 
$mpdf->SetDisplayMode('fullpage');
$mpdf->list_indent_first_level = 0; 
$mpdf->WriteHTML($mihir);

$mpdf->AddPage();
$mpdf->SetImportUse();

$cmd = 'gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -o order_form_instructions_energy_supply_v1.4.pdf order_form_instructions_energy_supply.pdf';
shell_exec($command);

$pagecount = $mpdf->SetSourceFile('order_form_instructions_energy_supply_v1.4.pdf');
$tplId = $mpdf->ImportPage($pagecount);
$mpdf->UseTemplate($tplId);
$mpdf->Output('test.pdf','D');

Ответ 4

сотовый комментарий не работает в моем localhost, что я могу сделать