Last updated on December 2, 2022
In this post, We will show you how you can use Ghostscript with PHP to merge multiple PDF files into a single file. Using Ghostscript, it is possible to merge multiple PDF files into a single PDF file with a single command from your terminal or command line.
Install Ghostscript
Type the command sudo apt-get install Ghostscript
to download and install the Ghostscript package and all of the packages it depends on.
Merging PDFs with Ghostscript
Here is the Ghostscript command to merge two are more PDFs in a single file:
$ gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=merged_file.pdf -dBATCH file_1.pdf file_2.pdf
In the above command, we are merging two Pdf files called file_1.pdf
and file_2.pdf
files into a single Pdf file called merged_file.pdf
.
NOTE: The order of the input files matters and determines the merging order in the final PDF.
Merging PDFs with Ghostscript / PHP
We can run the preceding gs command with PHP’s shell_exec()
function and we can also pass the filenames to it. Below is the sample PHP script:
function merge_pdfs($pdf_files,$output_file) {
$pdf_files = implode(" ",$pdf_files);
return shell_exec("gs -dNOPAUSE -sDEVICE=pdfwrite -sOUTPUTFILE=$output_file -dBATCH $pdf_files");
}