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 相关文章推荐
《APMServ 5.1.2》使用图解
Oct 23 PHP
SSI指令
Nov 25 PHP
深入探讨PHP中的内存管理问题
Aug 31 PHP
Php中用PDO查询Mysql来避免SQL注入风险的方法
Apr 25 PHP
深入php-fpm的两种进程管理模式详解
Jun 03 PHP
PHP转换IP地址到真实地址的方法详解
Jun 09 PHP
PHP调用VC编写的COM组件实例
Mar 29 PHP
PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
Jul 09 PHP
PHP实现支付宝即时到账功能
Dec 21 PHP
thinkphp3.2实现跨控制器调用其他模块的方法
Mar 14 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
Nov 13 PHP
PHP PDOStatement::getColumnMeta讲解
Feb 01 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
对象失去焦点时自己动提交数据的实现代码
2012/11/06 PHP
php判断页面是否是微信打开的示例(微信打开网页)
2014/04/25 PHP
PHP简单实现生成txt文件到指定目录的方法
2016/04/25 PHP
php实现的一段简单概率相关代码
2016/05/30 PHP
Google Map API更新实现用户自定义标注坐标
2009/07/29 Javascript
javascript实现面向对象类的功能书写技巧
2010/03/07 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
基于Jquery与WebMethod投票功能实现代码
2011/01/19 Javascript
ExtJS4中使用mixins实现多继承示例
2013/12/03 Javascript
使用js实现关闭js弹出层的窗口
2014/02/10 Javascript
js实现上传图片预览的方法
2015/02/09 Javascript
jquery实现两边飘浮可关闭的对联广告
2015/11/27 Javascript
Nodejs+Socket.io实现通讯实例代码
2017/02/13 NodeJs
微信小程序 UI与容器组件总结
2017/02/21 Javascript
详解vue-cli 构建Vue项目遇到的坑
2017/08/30 Javascript
详解Nuxt.js部署及踩过的坑
2018/08/07 Javascript
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
2019/06/19 Javascript
微信公众号生成新浪短网址的实现(快速生成)
2019/08/18 Javascript
为什么推荐使用JSX开发Vue3
2020/12/28 Vue.js
[36:05]DOTA2亚洲邀请赛 3.31 小组赛 A组 Liquid vs Optic
2018/04/01 DOTA
Python中使用不同编码读写txt文件详解
2015/05/28 Python
python hbase读取数据发送kafka的方法
2018/12/27 Python
Python中的引用知识点总结
2019/05/20 Python
使用Python对Dicom文件进行读取与写入的实现
2020/04/20 Python
华润集团网上药店:健一网
2016/09/19 全球购物
Skyscanner波兰:廉价航班
2017/11/07 全球购物
美国在线眼镜店:GlassesShop
2018/11/15 全球购物
罗马尼亚购物网站:Vivantis.ro
2019/07/20 全球购物
省三好学生申请材料
2014/01/22 职场文书
元旦红领巾广播稿
2014/02/19 职场文书
大学生实训报告总结
2014/11/05 职场文书
2015年公司新年寄语
2014/12/08 职场文书
求职简历自我评价2015
2015/03/10 职场文书
保护环境建议书作文300字
2015/09/14 职场文书
个人工作决心书
2015/09/22 职场文书
《原神》新角色演示“神里绫人:林隐泓洄” 宠妹狂魔
2022/04/03 其他游戏