欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Linux和Windows平台下PHP中PDF支持库的安装及应用案例_PHP

程序员文章站 2022-06-01 15:31:41
...
PDF

由于PDF文档有许多优势,因此广泛流行。而作为web界面方式中也可以通过使用脚本程序生成PDF文档。功能强大的PHP自然也可以实现。PHP中使用PDF需要安装了PDFlib才可。这里将带你讲述在不同平台中如何安装PDFlib,使您的PHP可以对PDF文档进行操作。

这里只讲述在Linux和Windows中的安装过程,其它平台中的UNIX和Linux中安装相似这里就不再单独叙述,MAC等平台由于使用的较少也不讲述。

一、安装前的准备

1.假设您的机器中已经安装好了Web服务器和PHP,这里的Linux服务器中安装的是Apache,Windows服务器中安装的是IIS。

2.下载所需要的软件:

PDFlib的下载(http://www.PDFlib.com)

Windows版本:pdflib-4.0.2-Windows.zip(http://www.pdflib.com/pdflib/download/pdflib-4.0.2-Windows.zip)

Linux版本源码:pdflib-4.0.2.tar.gz(http://www.pdflib.com/pdflib/download/pdflib-4.0.2.tar.gz)

#Linux版本已编译:pdflib-4.0.2-Linux.tar.gz(http://www.pdflib.com/pdflib/download/pdflib-4.0.2-Linux.tar.gz)

PHP的下载(http://www.php.net)

Windows完全版本:PHP 4.1.1 zip package(http://www.php.net/do_download.php?download_file=php-4.1.1-Win32.zip)
Linux版本源码:php-4.1.2.tar.gz(http://www.php.net/do_download.php?download_file=php-4.1.2.tar.gz)

二、Linux平台下的安装

将PDFlib文件和PHP文件下载,保存到/usr/local/src/这个目录中。(当前目录为/usr/local/src)

1.PDFlib的安装

过程:解压文件,配置,编译,安装

$ tar xvfz pdflib-*.tar.gz

$ cd pdflib-*

$ ./configure --with-share

$ make

$ make install

这样就将PDFlib安装到了,系统的"/usr/lib"这个目录中。在执行./configure时可以有的参数可以通过./configure --help查看。默认安装目录为"/usr/lib",默认安装中PHP的支持是打开的,因此不需要加参数"--with-php"

2.PHP的安装

因为我们假设您的系统中已经安装好apache+php,因此使用DSOs模式来安装PHP。

过程:重新配置PHP,编译,安装。建议在进行安装PHP的时候先停止Apache(apachectl stop),但这个步骤不是一定需要的。

$ cd ..

$ tar xvfz php-*.tar.gz

$ cd php-*

$ ./configure --with-apxs=/usr/local/httpd/bin/apxs --enable-gd-native-ttf --enable-gd-imgstrttf --with-tiff-dir=/usr --with-jpeg-dir=/usr --with-png-dir=/usr --with-pdflib=/usr/lib --enable-mysql

(注:其中的apache的路径为"/usr/local/httpd",如果您的不是,则填写您的apache的目录;如果你之前安装的pdflib安装到了别的目录,则将"/usr/lib"改为您安装的pdflib的目录;如果您还需要添加其它的PHP选项,直接添加在后面即可)

$ make

$ make install

这样就安装了PHP,且同时打开了pdflib。下面进行测试是否安装成功。

3.测试

★如果之前在安装PHP的时候停止了Apache,则需要先启动Apache(apachectl start);

★通过查看phpinfo是否安装成功,例如在DocumentRoot中的文件phpinfo.php。

phpinfo.php文件中的内容为:

phpinfo();

?>

在IE浏览器中查看链接:http://localhost/phpinfo.php

如果在结果页面中包含有以下内容则表明安装成功:

pdf

PDF Support enabled

PDFlib GmbH Version 4.0.2

Revision $Revision: 1.94.2.1 $

★复制PDFlib自带的测试文件(pdfclock.php)到你的DocumentRoot目录下的测试目录,例如:"/www/pdftest/"。

cp /usr/local/src/pdflib-*/bind/php/pdfclock.php /www/pdftest/.

在IE浏览器中查看链接:http://localhost/pdftest/pdfclock.php

如果执行成功,则恭喜您你的PHP已经可以支持pdf了。

注:您的系统中如安装有Acrobat Reader 4.0以上的版本,则看到IE会以插件的形式打开pdfclock.php生成的pdf文档,如果没有安装,则IE会提示下载这个pdf文档。

三、Windows平台下的安装

1.安装

注意由于PHP有两个版本,一个是简版只包含了mysql等默认扩展的支持,这里需要您下载完全版的,包含了全部的模块的文件。

下载Windows版本的PDFlib,将pdflib-4.0.2-Windows.zip解压到某个目录中,在目录"pdflib-4.0.2-Windows\bind\php"中有一些以PHP版本命名的目录,查看您的PHP版本,然后进入相应的目录,后将php_pdf.dll文件copy到你的php程序目录中的extensions目录(例如windows\system32)或者你不知道在哪个目录,直接搜索php_pdf.dll这个文件,查找到后,将上面解压目录中的php_pdf.dll文件复制到这里覆盖,如果提示文件存在,则选择覆盖。

2.修改php.ini文件

打开php.ini文件,找到这行:";extension=php_pdf.dll",将前面的分号去掉,然后保存。重新启动你的Web服务器(不是必须的)。

3.测试

★查看phpinfo.php文件

在IE浏览器中查看链接:http://localhost/phpinfo.php

如果在结果页面中包含有以下内容则表明安装成功:

pdf

PDF Support enabled

PDFlib GmbH Version 4.0.2

Revision $Revision: 1.94.2.1 $

★将目录"pdflib-4.0.2-Windows\bind\php"中的pdfclock.php文件复制到你的web根目录中或其某个自目录中,(例如D:\web\pdftest),然后在IE浏览器中查看,链接:http://localhost/pdftest/pdfclock.php

如果执行成功,则恭喜您你的PHP已经可以支持pdf了。

四、安装中的问题和注意事项

1.PDFlib需要 JPEG库 和 TIFF库 的支持;

2.在浏览器中测试时,如果页面中出现乱码,则很有可能是由于测试文件中有错误,不一定是系统安装的问题;

3.在Windows中有可能会出现提示找不到php_pdf.dll这个文件,是由于您将php_pdf.dll文件没有copy到extensions目录中,这个目录的位置是在php.ini中设置的,可以使用相对路径。其次或者是没有将解压后的php_pdf.dll文件覆盖原PHP自带的php_pdf.dll这个文件;

4.建议PDFlib和PHP等尽量使用最新的版本;

五、结束语

PDF从他诞生起就有着先天的优势,以及当今广泛的使用使PDF非常流行的出版物发行。而PHP中使用PDF所用到的库用的最多的就是PDFlib这个库。当然还有一个也可以使PHP操作PDF的库:ClibPDF(http://www.fastio.com/),这个和PDFlib非常相似,包括在PHP中使用的函数都很相似。但唯一遗憾的是,这两个库都需要purchase a license(购买版权)。否则会在您生成的PDF文档的每个页面中有他们标示的底字。这里就不再ClibPDF这个库的安装,因为他们的安装相似。

在Web中应用PDF,您可以立即让您的网站发布标准出版物的网站。

附录:

如果您不希望每个页面中都包含www.pdflib.com这样的底纹字,则在编译之前,打开这个文件pdflib/pdflib.rc,修改第47行中的:

VALUE "Comments", "www.pdflib.com\0"

改为:

VALUE "Comments", " \0"

然后再配置,编译......。