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 相关文章推荐
PHP文本操作类
Nov 25 PHP
Smarty安装配置方法
Apr 10 PHP
PHP 检查扩展库或函数是否可用的代码
Apr 06 PHP
PHP中使用crypt()实现用户身份验证的代码
Sep 05 PHP
PHP文件上传之多文件上传的实现思路
Jan 27 PHP
使用ThinkPHP的自动完成实现无限级分类实例详解
Sep 02 PHP
详解PHP处理密码的几种方式
Nov 30 PHP
thinkPHP5.0框架API优化后的友好性分析
Mar 17 PHP
php中html_entity_decode实现HTML实体转义
Jun 13 PHP
CentOS7编译安装php7.1的教程详解
Apr 18 PHP
PHP实现字母数字混合验证码功能
Jul 11 PHP
php设计模式之状态模式实例分析【星际争霸游戏案例】
Mar 26 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中将网址转换为超链接的函数
2011/09/02 PHP
openPNE常用方法分享
2011/11/29 PHP
用PHP实现弹出消息提示框的两种方法
2013/12/17 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
PHP和Mysql中转UTF8编码问题汇总
2015/10/10 PHP
Laravel 5.5官方推荐的Nginx配置学习教程
2017/10/06 PHP
Yii2.0实现生成二维码功能实例
2017/10/24 PHP
Javascript SHA-1:Secure Hash Algorithm
2006/12/20 Javascript
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
Jquery easyUI 更新行示例
2014/03/06 Javascript
jquery操作select方法汇总
2015/02/05 Javascript
jquery中filter方法用法实例分析
2015/02/06 Javascript
浅谈js函数的多种定义方法与区别
2016/11/29 Javascript
12个非常有用的JavaScript技巧
2017/05/17 Javascript
Vue学习之路之登录注册实例代码
2017/07/06 Javascript
vue导出html、word和pdf的实现代码
2018/07/31 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
[01:08:10]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS LGD-CDEC
2014/05/22 DOTA
全面了解Python环境配置及项目建立
2016/06/30 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
Python数据预处理之数据规范化(归一化)示例
2019/01/08 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
python占位符输入方式实例
2019/05/27 Python
python使用writerows写csv文件产生多余空行的处理方法
2019/08/01 Python
学会python自动收发邮件 代替你问候女友
2020/05/20 Python
天猫精选:上天猫,就够了
2016/09/21 全球购物
世界上最大的隐形眼镜商店:1-800 Contacts
2018/11/03 全球购物
瑞士隐形眼镜和护理产品网上商店:Linsenklick
2019/10/21 全球购物
奢华时尚的创新平台:Baltini
2020/10/03 全球购物
护士求职推荐信范文
2013/11/23 职场文书
大学校园生活自我鉴定
2014/01/13 职场文书
市场总监岗位职责
2015/02/11 职场文书
务工证明怎么写
2015/06/18 职场文书
2016年校园植树节广播稿
2015/12/17 职场文书
2016学校先进党组织事迹材料
2016/02/29 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python