Post Top Ad

Your Ad Spot

jueves, 7 de mayo de 2020

Laravel Merge PDFs

¿Alguna vez has necesitado combinar varios PDF juntos? Es una necesidad común. En este tutorial, cubriré cómo combinar múltiples archivos PDF juntos en Laravel.
Primero, necesitamos un paquete llamado  lara-pdf-merger. Instalarlo con el compositor:
composer require daltcore/lara-pdf-merger
A continuación, cree, importe el espacio de nombres:
use LynX39\LaraPdfMerger\Facades\PdfMerger;
Crea una nueva instancia:
$pdfMerger = PDFMerger::init();
Agregar PDF para fusionar:
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/1.pdf'), 'all');
Haga esto para cada PDF que se fusionará.
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/1.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/2.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/3.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/4.pdf'), 'all');
A continuación, llame a un método de fusión para realizar la fusión.
$pdfMerger->merge();
A continuación, guarde el PDF en el disco
$pdfMerger->save(public_path('quotes/001.pdf'), "file");

Poniendo todo esto junto:

$pdfMerger = PDFMerger::init(); //Initialize the merger
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/1.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/2.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/3.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/4.pdf'), 'all');
$pdfMerger->merge();
$pdfMerger->save(public_path('quotes/001.pdf'), "file");

Genere un PDF y fusione con los existentes

Es posible que desee generar un nuevo PDF y combinarlo con los PDF existentes.
Instalemos Laravel DOMPDF  para hacer un nuevo PDF. Instalar con el compositor:
composer require barryvdh/laravel-dompdf
Importar PDF:
use PDF;
Cree un nuevo PDF, cargue un archivo de vista (quotes / pdf.blade.php) para el contenido del PDF y guárdelo en una carpeta de citas y use el nombre de archivo quote-001.pdf
$filename = "quote-001.pdf";
$pdf = PDF::loadView('quotes.pdf', ['quote' => $data]);
$pdf->save('quotes/'.$filename);
Ahora, esto se puede fusionar utilizando la misma técnica anterior.
$filename = "quote-001.pdf";
$pdf = PDF::loadView('quotes/pdf', ['quote' => $record]);
$pdf->save('quotes/'.$filename);

$pdfMerger = PDFMerger::init(); //Initialize the merger
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/1.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/2.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/3.pdf'), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/4.pdf'), 'all');
$pdfMerger->addPDF(public_path('quotes/'.$filename), 'all');
$pdfMerger->addPDF(base_path('Modules/Quotes/pages/5.pdf'), 'all');
$pdfMerger->merge();
$pdfMerger->save(public_path('quotes/quote-001.pdf'), "file");

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas