2017-05-28 6 views
0

Ich weiß, wir haben bereits eine Reihe von Posts in SO und dies könnte ein Duplikat sein.Mischen Sie zwei PDFs mit PHP

Aber ich habe daran aus den letzten 24 Stunden ohne Erfolg gearbeitet. Ich habe durch alle Beiträge gegangen und nichts hat für mich gearbeitet.

Was ich versuche, ist ziemlich einfach und ich sah viele Beispiele, die Leute sagen, arbeiten für sie, aber arbeiteten nie für mich.

Unten ist der Code, den ich ohne Glück ausprobiere. Der kommentierte Teil hat die Wege, die ich versucht habe. Bitte helfen Sie mir in dieser Hinsicht.

<?php 
    error_reporting(E_ALL); 

/* 
    require __DIR__ . '/vendor/autoload.php'; 
    use iio\libmergepdf\Merger; 
    use iio\libmergepdf\Pages; 


    $m = new Merger(); 
    $m->addFromFile($file1); 
    $m->addFromFile($file2); 
    file_put_contents($outputName, $m->merge()); 

    $fileArray= array($file1, $file2); 

    // Using Ghostscript 
    $cmd = "gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$outputName "; 
    //Add each pdf file to the end of the command 
    foreach($fileArray as $file) { 
     $cmd .= $file." "; 
    } 
    echo $cmd; 
    $result = shell_exec($cmd); 

    //using fpdf 

    require('fpdf181/fpdf.php'); 
    require('fpdi162/fpdi.php'); 

    $pdf = new FPDI(); 

    foreach ($fileArray as $file) { 
     print_r($file); 
     $pageCount = $pdf->setSourceFile($file); 
     for ($i = 0; $i < $pageCount; $i++) { 
      echo $i; 
      $tpl = $pdf->importPage($i + 1, '/MediaBox'); 
      $pdf->addPage(); 
      $pdf->useTemplate($tpl); 
     } 
    } 

    // output the pdf as a file (http://www.fpdf.org/en/doc/output.htm) 
    $pdf->Output('F', $outputName); 

*/ 
    $file1 = "pdf1/file1.pdf"; 
    $file2 = "pdf2/file2.pdf"; 
    $datadir = "merged_pdf/"; 
    $outputName = $datadir."merged.pdf"; 

    include 'PDFMerger/PDFMerger.php'; 

    $pdf = new PDFMerger; // or use $pdf = new \PDFMerger; for Laravel 

    $pdf->addPDF($file1); 
    $pdf->addPDF($file2); 

    $pdf->merge('file', "merged.pdf"); // generate the file 

    // $pdf->merge('download', 'samplepdfs/test.pdf'); // force download 

    // REPLACE 'file' WITH 'browser', 'download', 'string', or 'file' for output options 


?> 

Antwort

0

I pdftk verwendet hilfreicher ist und mein Problem gelöst.

0

einfach diesem Link folgen, ich hoffe, diese

http://pdfmerger.codeplex.com/

<?php 
include 'PDFMerger.php'; 

$pdf = new PDFMerger; 

$pdf->addPDF('samplepdfs/one.pdf', '1, 3, 4') 
    ->addPDF('samplepdfs/two.pdf', '1-2') 
    ->addPDF('samplepdfs/three.pdf', 'all') 
    ->merge('file', 'samplepdfs/TEST2.pdf'); 

    //REPLACE 'file' WITH 'browser', 'download', 'string', or 'file' for output options 
    //You do not need to give a file path for browser, string, or download - just the name. 
?> 
+0

pdfmerger ist nicht zum Download verfügbar. Der Link ist gebrochen –

+0

Download URL: http://pdfmerger.codeplex.com/downloads/get/99109 – Arun