Generating PDF or postscript files on the fly with php is quite easy using a library called html2ps/pdf. Following are the steps which I took to install it on a fedora 7 server running php 5.x
As per the documentation, html2ps/pdf requires either Ghostscript or PDFLIB libraries for fast pdf generation. You can also use the inbuilt FPdf routines but that’s much slower. PDFLIB is non-free library which may requires you to have a license to use, therefore, I opted for GhostScript here.
Step 1. Check whether ghostscript is already installed or not:
# which gs
/usr/bin/which: no gs in (/usr/kerberos/sbin:/usr/kerberos/bin: //sbin://bin: /usr/local/sbin: /usr/local/bin:/sbin: /bin:/usr/sbin:/usr/bin:/root/bin)
as you can see above, gs binary is not installed. if its available in your system then jump to step 3 else proceed to its installation in step 2.
Step 2. Download, compile and install ghostscript library:
# cd /usr/src
# wget http://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/gs863/ghostscript-8.63.tar.gz
# tar xzf ghostscript-8.63.tar.gz
# cd ghostscript-8.63
# ./configure
# make
# make install
you can verify installation by issuing:
# which gs
/usr/local/bin/gs
Step 3. download and unzip the html2ps/pdf library:
# cd /usr/src
# wget http://www.tufat.com/files_lgpl/script_19.zip
# unzip script_19.zip
# cd html2ps_v2042/
you will find a public_html directory here having php files and related directories. They needs to be transferred to some other locations where Apache can access them. let’s store in /var/www/html/html2ps directory. (I assume /var/www/html is your DocumentRoot here).
# mkdir /var/www/html/html2ps
# mv public_html/* /var/www/html/html2ps
# cd /var/www/html/
change ownership to apache:
# chown apache:apache html2ps/ -R
Step 4. Update html2ps/pdf library config file to find out ghostscript binary for pdf creation.
# cd /var/www/html/html2ps
# vim config.inc.php
//update line where path of Ghostscript executable required, in my case it’s in line 27.
define(‘GS_PATH’,'/usr/local/bin/gs’);
save and exit.
Library is installed, you should be able to use it using http://localhost/html2ps/index.php URL now.
REFERENCES
http://linuxadminzone.com/install-html2pspdf-library-to-create-pdf-files-using-php/