Объединить несколько файлов PDF в один в PHP [закрыто

StackOverflow https://stackoverflow.com/questions/19855712

  •  29-07-2022
  •  | 
  •  

Вопрос

Я хотел бы объединить несколько файлов PDF с одним. Файлы PDF находятся на разных сайтах, поэтому их сначала должны быть загружены и объединены до одного.

Мы работаем с PHP и Codeigniter. Кто -нибудь знает решение моей проблемы?

Это было полезно?

Решение

да. Я объединил PDF. Получить FPDF а также FPDI Библиотеки и поместите их в третью сторону папки кода. Тогда это просто вопрос чтения руководства для FPDFI и объединения документов. Используйте это, чтобы настроить библиотеки

 require_once("application/third_party/fpdf/fpdf.php");//http://www.fpdf.org/
 require_once("application/third_party/fpdi/FPDI_Protection.php");//http://www.setasign.de/products/pdf-php-solutions/fpdi/

Тогда этот фрагмент кода должен дать вам представление о том, как он работает. Примечание я отредактировал разделы для ясности. Этот пример потокового файла PDF. Вы можете так же легко сохранить файл в другом месте.

    $files = array(<file full paths here>);

$pdf = new FPDI_Protection();
if ($data->password)
{
    $pdf->setProtection(array(),$data->password);
}
for ($i = 0; $i < count($files); $i++ )
{
    $pagecount = $pdf->setSourceFile($files[$i]);
    for($j = 0; $j < $pagecount ; $j++)
    {
        $tplidx = $pdf->importPage(($j +1), '/MediaBox'); // template index.
        $pdf->addPage('L','A4');// orientation can be P|L
        $pdf->useTemplate($tplidx, 0, 0, 0, 0, TRUE);                   
    }
    unlink($files[$i]); // you may not want to unlink the files!
}

$dt = new DateTime(NULL, new DateTimeZone($data->user->timezone));
    // set the metadata.
$pdf->SetAuthor($data->user->user_name);
$pdf->SetCreator('website name!');
$pdf->SetTitle('PDF, created: '.$dt->format(MYHMRS_DATETIME_FRIENDLY));
$pdf->SetSubject('PDF subject !');
$pdf->SetKeywords('website name!'.", keywords! ".$data->user->user_name);
$output = $pdf->Output('', 'S');
$name = "PDF".'-'.$dt->format('ymd').'.pdf';

$this->output
    ->set_header("Content-Disposition: filename=$name;")
    ->set_content_type('Application/pdf')
    ->set_output($output);

Что касается получения PDF с других сайтов, сначала убедитесь, что вам разрешено сделать это, то это вопрос использования Curl. (копия URL). Eсть Библиотека codeigniter, чтобы сделать это, или вы можете использовать Библиотека PHP.

Другие советы

Ссылка на ссылку:http://portfolio.floatbit.com/blog/merge-multiple-pdfs-php-using shellexec

enter image description here

PDF Merge также является решением

Ссылка на ссылку:http://pdfmerger.codeplex.com/releases/view/37934

enter image description here

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top