php FPDF类库应用实现代码


Posted in PHP onMarch 20, 2009
<?php 
require('chinese.php'); 
class PDF extends PDF_Chinese 
{ 
function Header() //设置页眉 
{ 
$this->SetFont('GB','',10); 
$this->Write(10,'XX公司产品名录'); 
$this->Ln(20); //换行 
} 
function Footer() //设置页脚 
{ 
$this->SetY(-15); 
$this->SetFont('GB','',10); 
$this->Cell(0,10,'第'.$this->PageNo().'页'); 
} 
} $conn = mysql_connect("localhost", "root", ""); //连接数据库 
mysql_select_db("product", $conn); //执行SQL 
$query_rs_prod = "SELECT * FROM product ORDER BY prod_id"; 
$rs_prod = mysql_query($query_rs_prod, $conn) or die(mysql_error()); 
$row_rs_prod = mysql_fetch_assoc($rs_prod); 
$totalRows_rs_prod = mysql_num_rows($rs_prod); 
$pdf=new PDF(); //创建新的FPDF对象 
$pdf->AddGBFont(); //设置中文字体 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 
$pdf->SetFont('GB','',10); //设置字体样式 
$header=array('产品编号','产品名称','产品类型','产品单价'); //设置表头 
$width=array(20,80,40,20); //设置每列宽度 
for($i=0;$i<count($header);$i++) //循环输出表头 
$pdf->Cell($width[$i],6,$header[$i],1); 
$pdf->Ln(); 
do //循环输出表体 
{ 
$pdf->Cell($width[0],6,$row_rs_prod['prod_id'],1); 
$pdf->Cell($width[1],6,$row_rs_prod['prod_name'],1); 
$pdf->Cell($width[2],6,$row_rs_prod['prod_type'],1); 
$pdf->Cell($width[3],6,$row_rs_prod['prod_price'],1); 
$pdf->Ln(); 
} while ($row_rs_prod = mysql_fetch_assoc($rs_prod)); 
$pdf->Output("product.pdf", true); //下载PDF文件 
?>

<?php 
define('FPDF_FONTPATH','font/'); //定义font文件夹所在路径 
require_once('fpdf/fpdf.php'); //包含fpdf类库文件 
$pdf=new FPDF('P', 'mm', 'A4'); //创建新的FPDF对象,竖向放纸,单位为毫米,纸张大小A4 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 
$pdf->SetFont('Courier','I',20); //设置字体样式 
$pdf->Cell(0,0,'Hello World!'); //增加一个单元格 
$pdf->Output(); //输出PDF到浏览器 
?>

<?php 
define('FPDF_FONTPATH','font/'); //定义font文件夹所在路径 
require_once('fpdf/fpdf.php'); //包含fpdf类库文件 
$pdf=new FPDF('P', 'mm', 'A4'); //创建新的FPDF对象,竖向放纸,单位为毫米,纸张大小A4 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 
$pdf->SetFont('Courier','I',20); //设置字体样式 
$pdf->Image('sight.jpg',20,20,0,0); //增加一张图片,文件名为sight.jpg 
$pdf->Output(); //输出PDF到浏览器 
?>

<?php 
define('FPDF_FONTPATH','font/'); //定义font文件夹所在路径 
require_once('fpdf/fpdf.php'); //包含fpdf类库文件 
$pdf=new FPDF(‘P', ‘mm', ‘A4'); //创建新的FPDF对象,竖向放纸,单位为毫米,纸张大小A4 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 
$pdf->SetFont('Courier','I',20); //设置字体样式 
$pdf->Cell(60,10,'Hello World!',1); //增加一个单元格 边框为1 
$pdf->Output(); //输出PDF到浏览器 
?>

<?php 
define('FPDF_FONTPATH','font/'); //定义font文件夹所在路径 
require_once('fpdf/fpdf.php'); //包含fpdf类库文件 
$pdf=new FPDF('P', 'mm', 'A4'); //创建新的FPDF对象,竖向放纸,单位为毫米,纸张大小A4 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 $pdf->SetFont('Arial','',14); //设置字体样式 
$header=array('Name','Age','Sex','Salary'); //设置表头 
$data=array(); //设置表体 
$data[0] = array('Simon','24','Male','5,000.00'); 
$data[1] = array('Elaine','25','Female','6,000.00'); 
$data[2] = array('Susan','25','Female','7,000.00'); 
$data[3] = array('David','26','Male','8,000.00'); 
$width=array(40,40,40,40); //设置每列宽度 
for($i=0;$i<count($header);$i++) //循环输出表头 
$pdf->Cell($width[$i],6,$header[$i],1); 
$pdf->Ln(); 
foreach($data as $row) //循环输出表体 
{ 
$pdf->Cell($width[0],6,$row[0],1); 
$pdf->Cell($width[1],6,$row[1],1); 
$pdf->Cell($width[2],6,$row[2],1); 
$pdf->Cell($width[3],6,$row[3],1); 
$pdf->Ln(); 
} 
$pdf->Output(); //输出PDF到浏览器 
?>

<?php 
define('FPDF_FONTPATH','font/'); //定义font文件夹所在路径 
require_once('fpdf/fpdf.php'); //包含fpdf类库文件 
$pdf=new FPDF('P', 'mm', 'A4'); //创建新的FPDF对象,竖向放纸,单位为毫米,纸张大小A4 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 
$pdf->SetFont('Courier','I',20); //设置字体样式 
$pdf->Cell(0,0,'你好,FPDF'); //增加一个单元格并输出中文 
$pdf->Output(); //输出PDF到浏览器 
?>

<?php 
require('chinese.php'); 
class PDF extends PDF_Chinese 
{ 
function Header() //设定页眉 
{ 
$this->SetFont('GB','',10); 
$this->Write(10,'FPDF中文测试'); 
$this->Ln(20); 
} function Footer() //设定页脚 
{ 
$this->SetY(-15); 
$this->SetFont('GB','',10); 
$this->Cell(0,10,'第'.$this->PageNo().'页'); 
} 
} 
$pdf=new PDF(); //创建PDF文档 
$pdf->AddGBFont(); 
$pdf->Open(); 
$pdf->AliasNbPages(); 
$pdf->AddPage(); 
$pdf->SetFont('GB','I',20); 
$pdf->Cell(0,10,'你好,FPDF'); //输出一段中文 
$pdf->Output(); 
?>

<?php 
$conn = mysql_connect("localhost", "root", ""); //连接数据库 
$colname_rs_article = $_GET['id']; //获取参数id mysql_select_db("cms", $conn); //执行SQL 
$query_rs_article = sprintf("SELECT * FROM articles WHERE article_id = %s", $colname_rs_article); 
$rs_article = mysql_query($query_rs_article, $conn) or die(mysql_error()); 
$row_rs_article = mysql_fetch_assoc($rs_article); 
$totalRows_rs_article = mysql_num_rows($rs_article); 
function conv($Text) //对返回文本进行处理 
{ 
$Text=htmlspecialchars($Text); //转换HTML关键字符 
$Text=nl2br($Text); //转换换行符 
return $Text; 
} 
?> 
<p align="center"><B><?php echo $row_rs_article['title']; ?></B></p> 
<p align="center"><font size=2><?php echo $row_rs_article['author']; ?> | <a href="showpdf.php?id=<?php echo $row_rs_article['article_id']; ?>">下载PDF文档</a></font></p> 
<HR> 
<p><?php echo conv($row_rs_article['content']); ?></p>

<?php 
require('chinese.php'); 
class PDF extends PDF_Chinese 
{ 
function Header() //设置页眉 
{ 
$this->SetFont('GB','',10); 
$this->Write(10,'文章系统 - XX网站'); 
$this->Ln(20); //换行 
} 
function Footer() //设置页脚 
{ 
$this->SetY(-15); 
$this->SetFont('GB','',10); 
$this->Cell(0,10,'第'.$this->PageNo().'页'); 
} 
} 
//主程序开始 
$conn = mysql_connect("localhost", "root", ""); //连接数据库 
$colname_rs_article = $_GET['id']; //获取参数id mysql_select_db("cms", $conn); //执行SQL 
$query_rs_article = sprintf("SELECT * FROM articles WHERE article_id = %s", $colname_rs_article); 
$rs_article = mysql_query($query_rs_article, $conn) or die(mysql_error()); 
$row_rs_article = mysql_fetch_assoc($rs_article); 
$totalRows_rs_article = mysql_num_rows($rs_article); 
//开始创建PDF文档 
$pdf=new PDF(); 
$pdf->AddGBFont(); 
$pdf->Open(); 
$pdf->AliasNbPages(); 
$pdf->AddPage(); 
$pdf->SetFont('GB','B',20); 
$pdf->Cell(0,10,$row_rs_article['title']); //输出文章标题 
$pdf->Ln(); //换行 
$pdf->SetFont('GB','',10); 
$pdf->Cell(0,10,$row_rs_article['author']); //输出文章作者 
$pdf->Ln(); 
$pdf->SetFont('GB','',12); 
$content = $row_rs_article['content']; 
while($content != "") //循环逐页将文章内容写入PDF 
{ 
$length = strlen($content); //获取文章长度 
$output = substr($content, 0, 1024); //获取本页输出内容,每1024个字符为1页 
$pdf->Cell(0,10,$output); //输出文章内容 
$content = substr($content, 1024, $length); //获取剩余未输出内容 
$pdf->AddPage(); //换页 
} 
$pdf->Output($row_rs_article['title'].".pdf", true); //输出PDF文件,文件名为文章标题 
?>

<?php 
define('FPDF_FONTPATH','font/'); //定义font文件夹所在路径 
require_once('fpdf/fpdf.php'); //包含fpdf类库文件 class PDF extends FPDF 
{ 
function Header() //设置页眉 
{ 
$this->SetFont('Arial','B',15); //设置页眉字体 
$this->Cell(80); //移动单元格 
$this->Cell(30,10,'Title'); //写入页眉文字 
$this->Ln(20); //换行 
} 
function Footer() //设置页脚 
{ 
$this->SetY(-15); //设置页脚所在位置 
$this->SetFont('Arial','I',8); //设置页脚字体 
$this->Cell(0,10,'Page - '.$this->PageNo()); //输出当前页码作为页脚内容 
} 
} 
$pdf=new PDF('P', 'mm', 'A4'); //创建新的FPDF对象,竖向放纸,单位为毫米,纸张大小A4 
$pdf->Open(); //开始创建PDF 
$pdf->AddPage(); //增加一页 
$pdf->SetFont('Courier','I',20); //设置字体样式 
$pdf->Cell(0,0,'Hello World!'); //增加一个单元格 
$pdf->Output(); //输出PDF到浏览器 
?>
PHP 相关文章推荐
最省空间的计数器
Oct 09 PHP
PHP中的str_repeat函数在JavaScript中的实现
Sep 16 PHP
php递归函数中使用return的注意事项
Jan 17 PHP
PHP中使用GD库创建圆形饼图的例子
Nov 19 PHP
Linux中为php配置伪静态
Dec 17 PHP
在Mac OS上自行编译安装Apache服务器和PHP解释器
Dec 24 PHP
php实现批量删除挂马文件及批量替换页面内容完整实例
Jul 08 PHP
比较完整的微信开发php代码
Aug 02 PHP
PHP多进程之pcntl_fork的实例详解
Oct 15 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
Nov 13 PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 PHP
PHP常用字符串输出方法分析(echo,print,printf及sprintf)
Mar 09 PHP
php adodb分页实现代码
Mar 19 #PHP
php daodb插入、更新与删除数据
Mar 19 #PHP
php adodb连接不同数据库
Mar 19 #PHP
php adodb操作mysql数据库
Mar 19 #PHP
php adodb介绍
Mar 19 #PHP
php Http_Template_IT类库进行模板替换
Mar 19 #PHP
php auth_http类库进行身份效验
Mar 19 #PHP
You might like
用PHP程序实现支持页面后退的两种方法
2008/06/30 PHP
CURL的学习和应用(附多线程实现)
2013/06/03 PHP
一个PHP二维数组排序的函数分享
2014/01/17 PHP
CodeIgniter框架URL路由总结
2014/09/03 PHP
php版阿里云OSS图片上传类详解
2016/12/01 PHP
PHP 实现公历日期与农历日期的互转换
2017/09/13 PHP
Laravel5.1框架路由分组用法实例分析
2020/01/04 PHP
PHP 实现 WebSocket 协议原理与应用详解
2020/04/22 PHP
javascript 不间断的图片滚动并可点击
2010/01/15 Javascript
jquery阻止冒泡事件使用模拟事件
2013/09/06 Javascript
Ajax提交与传统表单提交的区别说明
2014/02/07 Javascript
在JavaScript中使用timer示例
2014/05/08 Javascript
asp.net中oracle 存储过程(图文)
2015/08/12 Javascript
BootStrap无限级分类(无限极分类封装版)
2016/08/26 Javascript
vue 详情跳转至列表页实现列表页缓存
2019/03/27 Javascript
详解小程序如何动态绑定点击的执行方法
2019/11/26 Javascript
[01:35]2014DOTA2西雅图邀请赛 专访狐狸妈青春献给刀塔
2014/07/08 DOTA
python插入排序算法的实现代码
2013/11/21 Python
Python中关于字符串对象的一些基础知识
2015/04/08 Python
Python操作MongoDB数据库的方法示例
2018/01/04 Python
python微信公众号开发简单流程
2018/03/23 Python
在python中只选取列表中某一纵列的方法
2018/11/28 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
2018/12/24 Python
Django中Middleware中的函数详解
2019/07/18 Python
在Python中os.fork()产生子进程的例子
2019/08/08 Python
基于Django实现日志记录报错信息
2019/12/17 Python
Python新手如何理解循环加载模块
2020/05/29 Python
夏威夷咖啡公司:Hawaii Coffee Company
2019/09/19 全球购物
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
电气专业应届生求职信
2013/11/01 职场文书
装修五一活动策划案
2014/01/23 职场文书
商业房地产广告语
2014/03/13 职场文书
铁路安全反思材料
2014/12/24 职场文书
2015年项目工作总结
2015/04/29 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书
springboot为异步任务规划自定义线程池的实现
2022/06/14 Java/Android