首页 ┆ 网站地图 ┆ 在线留言 ┆ 游戏资讯 ┆ 资源下载  ┆ 端午节祝福 
设为首页
加入收藏
联系我们
热门关键字: .net应用  操作系统  Dreamweaver  WinRAR  网络推广
高级搜索
您当前的位置: 主页>PHP专区>编程技巧>PHP程序开发利用PDFLib扩展模块动态产生PDF格式的文件
PHP程序开发利用PDFLib扩展模块动态产生PDF格式的文件
来源: 发布时间:2008-06-28 发布人: 浏览: 人次   字体: [ ]  

这次说说PDFLib扩展模块,它能够让开发人员动态产生PDF(Adobe Portable Document Format)格式的文件,下面就先看看如何在PHP里使用这个模块。

  为了能够使PHP具有操作PDF格式文档的能力,你必须先在你的系统里安装PDFLib扩展库,如果你使用的是Lunix系统,你可以从 http://www.pdflib.com/pdflib/index.html下载一个并进行编译,如果你使用的是Windows系统,那就更简单了,只需要下载一个编译好的PDFLib库,然后在PHP的配置文件里把相应的行的注释去掉即可。

  extension=php_pdf.dll

  如果是动态装载,也可以是参照下面的命令:

  dl("php_pdf.dll");

  此外,你还必须有一个Adobe Acrobat PDF阅读器,用来浏览PDF格式,如果你没有,你可以从http://www.adobe.com/免费下载。

  一旦你做好了前期准备,就可以创建PDF文件了,下面就是一个简单的例子:

// 创建一个新的PDF文档句柄
  $pdf = PDF_new();
  // 打开一个文件
  PDF_open_file($pdf, "PDFTest.pdf");
  // 开始一个新页面(A4)
  PDF_begin_page($pdf, 595, 842);
  // 得到并使用字体对象
  $arial = PDF_findfont($pdf, "Arial", "host", 1);
  PDF_setfont($pdf, $arial, 10);
  // 输出文字
  PDF_show_xy($pdf, "This is an exam of PDF Documents, It is a good Lib,",50, 750);
  PDF_show_xy($pdf, "If you like,please try yourself!", 50, 730);
  // 结束一页
  PDF_end_page($pdf);
  // 关闭并保存文件
  PDF_close($pdf);
  ?>

  然后保存成PHP文件,在浏览器里进行浏览,PHP就会执行上面的代码,它产生一个新的PDF文件,并保存到指定的位置。

  现在我们分析一下代码,要使用PHP创建PDF文件,有四个步骤:1,创建文档句柄;2,注册文档的字体和颜色;3,用PDFLib提供的函数向文件句柄写文字或画图;4,保存文档。

  首先,创建PDF文档句柄,语法如下:

  $pdf = PDF_new();

  这个任务是由PDF_new()函数完成的,它返回一个PDF文档的句柄,这个句柄将会被后续的所有操作使用。

  下一步要做的,就是给PDF文件一个名字,由PDF_open_file()函数完成,它需要先前创建的文件句柄和自定义的文件名做参数:

  PDF_open_file($pdf, "PDFTest.pdf");

  一旦我们创建了文档,就可以用PDF_begin_page()函数在其中插入新页面了:

  PDF_begin_page($pdf, 595, 842);

  然后用PDF_end_page()结束页面。

  注意这里,在PDF_begin_page()函数里,有另外两个参数,他们分别代表页面尺寸的宽和高,单位是磅(point,1磅等于1/72英寸),或许在这里数学并不是你的强项,PHP还提供了大多数标准页面尺寸,象A4等,上面的例子就是使用A4的尺寸。

  在调用PDF_begin_page()函数和PDF_end_page()函数之间的代码是向PDF文档了写内容的,内容可以是文字、图象以及几何图形等。例子中只是写了一行文字,先得到一个字体,然后把文字写到文档里。通过PDF_findfont()和PDF_setfont()函数选择和注册字体是很方便的,PDF_findfont()函数预备了一种文档中要使用的字体,需要的参数有字体的名字,使用的编码,字体是否要嵌入到PDF文件中。PDF_findfont()函数返回一个字体对象,它将会在PDF_setfont()函数里使用。

  $arial = PDF_findfont($pdf, "Arial", "host", 1);
  PDF_setfont($pdf,$arial, 10);

  一旦我们设定了字体,就可以使用PDF_show_xy()函数向页面中的指定位置写字符串了。

  PDF_show_xy($pdf, "This is an exam of PDF Documents, It is a good Lib,",50, 750);
  PDF_show_xy($pdf, "If you like,please try yourself!", 50, 730);

  PDF_show_xy()函数用来向页面写内容,最后两个参数是要写入的字符串的坐标位置,注意坐标的原点(0,0)是在文档的左下角。一旦文字写完了,页面就可以关闭了PDF_end_page(),当然你也可以写更多的页。所有的页面写完之后,用PDF_close()函数关闭文档,此时文档就回保存到调用PDF_open_file()函数时指定的文件名和路径下,文档句柄随之销毁。

  PDFLib库能做的事情还远不止这些,还可以在页面里加入图象,我们以前面的文件为例,在文字的下面添加一个图象文件,下面的语句实现了添加图象功能:

  $image = PDF_open_image_file($pdf, "jpeg", "PDFImageTest.jpg");
  PDF_place_image($pdf, $image, 50, 650, 0.25);


共3页: 上一页 1 [2] [3] 下一页
↓下一篇:没有了
相 关 文 章   发布商链接
·利用PHP制作简单的内容采集器
·用PHP来构建自定义搜索引擎
·用PHP程序直接调用文本文件内容实例
·如何用PHP对文本文件加密并限制特定...
·PHP实现Mysql远程同步代码
 §最新评论:(评论内容只代表网友观点,与本站立场无关!)
网名: 验证码:  【所有评论】【↑返回顶部
评 分: 12 345
评论内容:(不能超过500字,请自觉遵守互联网相关政策法规。[按 Ctrl+Enter 可直接提交]
注意:请勿在本站发布政治话题、色情及违反法律的内容。
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。
推 荐 文 章
·PHP实现Mysql远程同步代码
·如何用PHP对文本文件加密并限
·用PHP程序直接调用文本文件内
·用PHP来构建自定义搜索引擎
·利用PHP制作简单的内容采集器
热 门 文 章
·PHP实现Mysql远程同步代码
·如何用PHP对文本文件加密并限...
·用PHP来构建自定义搜索引擎
·利用PHP制作简单的内容采集器
·用PHP程序直接调用文本文件内...
网站首页 - 关于本站 - 加入收藏 - 网站地图 - 友情连接 - 在线留言 - 联系我们 - 返回顶部
Copyright © 2007 IT知道网.[冀ICP备07026896号]. All Rights Reserved .