Joel, miembro de nuestro equipo de trabajo, nos hizo el favor de escribir esta sección ya que controla a la perfección este tema.
Solución:
A continuación se muestra el comando de combinación de php PDF.
$fileArray= array("name1.pdf","name2.pdf","name3.pdf","name4.pdf");
$datadir = "save_path/";
$outputName = $datadir."merged.pdf";
$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." ";
$result = shell_exec($cmd);
Olvidé el enlace de donde lo encontré, pero funciona bien.
Nota: debe tener gs (en Linux y probablemente Mac) o Ghostscript (en Windows) instalado para que esto funcione.
yo sugiero Fusión de PDF de github.com, tan fácil como ::
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
He hecho esto antes. Tenía un pdf que generé con fpdf, y necesitaba agregarle una cantidad variable de archivos PDF.
Así que ya tenía un objeto fpdf y una página configurada (http://www.fpdf.org/) Y usé fpdi para importar los archivos (http://www.setasign.de/products/pdf-php-solutions/ fpdi/) FDPI se agrega extendiendo la clase PDF:
class PDF extends FPDI
$pdffile = "Filename.pdf";
$pagecount = $pdf->setSourceFile($pdffile);
for($i=0; $i<$pagecount; $i++)
$pdf->AddPage();
$tplidx = $pdf->importPage($i+1, '/MediaBox');
$pdf->useTemplate($tplidx, 10, 10, 200);
Básicamente, esto convierte cada pdf en una imagen para poner en su otro pdf. Funcionó increíblemente bien para lo que lo necesitaba.
Comentarios y puntuaciones del post
Si crees que te ha sido de ayuda este artículo, sería de mucha ayuda si lo compartieras con más seniors de esta manera nos ayudas a difundir esta información.