‘壹’ 许昌鲤鱼IT电脑计算机软件编程培训中心教你如何利用php生成pdf文件
在PHP代码中生成PDF文件是一项非常耗时的工作,早期的程序员通常是在PHP代码中利用FPDF生成PDF文件。但在如今,有很多的函数库可以使用,借助它们你可以从你提供的HTML文档生成PDF文件,从而让工作变得简单方便起来。
FPDF是一个PHP类,它允许用纯PHP代码生成PDF文件,这也就是说我们不用使用PDFlib库。FPDF中的F就代表着自由:你可以以各种方式使用它,并根据你的需求调整它。下面我们来看看FPDF的特征:
1. 自由选择单元格,页面格式和边距;
2. 管理页眉和页脚;
3. 自动分页;
4. 自动换行和文本对齐;
5. 支持图片(JPEG,PNG,GIF);
6. 颜色管理;
7. 支持链接;
接下来再介绍一下可以直接从HTML生成PDF的函数库。
DomPDF
DomPDF是一个从HTML到PDF的转换器,它遵循CSS2.1的HTML布局,还有是用PHP编写的渲染引擎。DomPDF以样式为主导:它可以下载和读取外链样式表,内链样式标签和HTML元素的属性。它的特点包括:
1. 处理CSS属性,包括了@import,@media和@page规则;
2. 支持HTML的可见属性;
3. 支持外部样式表,通过本地或http/ftp;
4. 支持复杂的表结构;
8. 支持图片(JPEG,BMP,PNG,GIF);
5. 不依赖于其他PDF库;
TCPDF
TCPDF是一个用于生成PDF文件的开源PHP类,该项目起源于2002年,现在已经有全世界成千上万的人在使用。它的提点包括:
1. 基本功能不需要外部函数库;
2. 支持标准页面格式,自定义页面格式;
3. 支持UTF-8编码和从右向左的语言;
4. 支持各种字体;
5. 支持图片和图形的转换;
6. 支持页面压缩;
7. 支持页眉和页脚管理;
‘贰’ 怎么用PHP在HTML中生成PDF文件
php有很多开源的生成PDF的类库你直接搜下就能找到
类似这样的插件基本都输出同样格式就可以;
这下边是个案列:
require_once('tcpdf.php');
//实例化
$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);
// 设置文档信息
$pdf->SetCreator('Helloweba');
$pdf->SetAuthor('yueguangguang');
$pdf->SetTitle('Welcome to helloweba.com!');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, PHP');
// 设置页眉和页脚信息
$pdf->SetHeaderData('logo.png', 30, 'Helloweba.com', '致力于WEB前端技术在中国的应用',
array(0,64,255), array(0,64,128));
$pdf->setFooterData(array(0,64,0), array(0,64,128));
// 设置页眉和页脚字体
$pdf->setHeaderFont(Array('stsongstdlight', '', '10'));
$pdf->setFooterFont(Array('helvetica', '', '8'));
// 设置默认等宽字体
$pdf->SetDefaultMonospacedFont('courier');
// 设置间距
$pdf->SetMargins(15, 27, 15);
$pdf->SetHeaderMargin(5);
$pdf->SetFooterMargin(10);
// 设置分页
$pdf->SetAutoPageBreak(TRUE, 25);
// set image scale factor
$pdf->setImageScale(1.25);
// set default font subsetting mode
$pdf->setFontSubsetting(true);
//设置字体
$pdf->SetFont('stsongstdlight', '', 14);
$pdf->AddPage();
$str1 = '欢迎来到Helloweba.com';
$pdf->Write(0,$str1,'', 0, 'L', true, 0, false, false, 0);
//输出PDF
$pdf->Output('t.pdf', 'I');
‘叁’ 《php从入门到精通》pdf下载在线阅读全文,求百度网盘云资源
《php从入门到精通》网络网盘pdf最新全集下载:
链接: https://pan..com/s/1Qmw6cORdqk99SD09n41UFw
‘肆’ PHP生成PDF,用什么类库好
FPDF
FPDF
这个PHP
Class允许你采用纯PHP(更确切地说就是不需要使用PDFlib)来生成PDF文件。它所具有的特点包括:可选择的unit大小,页面格式和页边
距;页眉和页脚管理;自动分页;自动换行与文本自动对齐;支持JPEG与PNG图片格式;支持着色和文件超链接;支持TrueType,Type1与
encoding;支持页面压缩。
HTML2PDF
HTML2PDF能够把一个HTML文本转换成一个打印机友好的PDF文件。这个PHP脚本构建在FPDF
PHP脚本之上。
TCPDF
TCPDF是一个用于快速生成PDF文件的PHP5函数包。TCPDF基于FPDF进行扩展和改进。支持UTF-8,Unicode,HTML和
XHTML。
html2ps
html2ps
能够把带有图片,复杂表格(包含rowspan/colspan)
,layer/div和css样式的HTML转换成Postscript与PDF。
html2ps对CSS2.1支持非常好,并且很好地兼容不正确的HMTL。它甚至能够转换几乎是采用CSS设计的网站如msn.com。
HTML_ToPDF
HTML_ToPDF能够把任何HTML文档转换成在任何平台和打印机下界面格式都一样的PDF文档。它包括支持图片转换,使用样式表来定制PDF
文件和错误处理。
cPdfWriter
cPdfWriter是一个能够输出PDF文档的PHP5
class。基于TCPDF,FPDF和其它相关脚本。
dompdf
dompdf是一个HTML到PDF的转换工具。它的核心是一个遵循大部份CSS2.1样式的Rendering引擎。dompdf采用样式驱动,
它能够下载并读取外部样式,整个样式标签和单个HTML元素的样式属性。它同样支持目当大部份HTML属性。
‘伍’ PHP生成PDF,用什么类库好
建议用MPDF,优点主要是组装页面简单,完美读取页面样式,兼容utf8和图片排版.
我用过fpdf,中文支持不好,而且要用拼单元格的方式拼页面,特别麻烦.tcpdf没太研究,因为更麻烦所以放弃了.
wkhtmltopdf需要服务器支持,占用服务器资源较多.弃掉了
至于dompdf,HTML2PDF等,你可以适当研究一下
‘陆’ php怎么在页面中直接打开pdf文件
首先,在网上下载第三方转换软件。将该软件解压至浏览PHP文件的同名目录下。应用exec()执行该可执行文件。并将打开的文件保存至PHP可读的文件类型(最好以时间戳命名),并将文件赋到一个变量中。
然后通过PHP 的header函数读取该文件内容。并将读取的内容在如SDK编辑器上打开。待用户编辑完成后,保存至该文件中。并重新执行其他格式的文件->PDF软件转换。重新生成PDF文件,并将原来可以被PHP 打开的文件删除。
这样即可实现用PHP 来打开PDF文件。希望能帮到你。
‘柒’ PHP上传pdf文件应该设置什么类型
有两种方法:
1.上传PDF文档的时候不是有个$_FILES['userfile']['type']吗?输出他就知道他是什么文档了。
2.PHP有一个pathinfo函数,用法是这样的
<?php
$path_parts = pathinfo("/www/htdocs/index.html");
echo $path_parts["dirname"] . "\n";
echo $path_parts["basename"] . "\n";
echo $path_parts["extension"] . "\n";
?>
上例将输出:
/www/htdocs
index.html
html
其中我们要用到的就是他的extension。
$path_parts = pathinfo($_FILES['userfile']['name'])
$filetype=$path_parts["extension"];
$filetype将会是你的文件类型,也就是PDF了。
好了就这麼多。
‘捌’ php里面的pdf文件是什么文件
PDF 是一种格式固化了的文本,体积较小,具有矢量放大缩小不变形的特征。
世界科技界通用的一种文本格式,也是法律文本的网络传送的最常见的格式。
‘玖’ PHP生成PDF,用什么类库好
public static function pdfForceView($file_full_path, $title) {
self::clean_before_output();
if(!is_readable($file_full_path)){
return false;
}
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-type: application/pdf');
$filename = trim($title).'.pdf';
if(strpos($_SERVER["HTTP_USER_AGENT"], 'MSIE') !== false){
$filename = rawurlencode($filename);
}
header('Content-Disposition: inline; filename="' . $filename . '"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file_full_path));
header('Accept-Ranges: bytes');
readfile($file_full_path);
}
用header是最简单的。复杂的建议用 mpdf ,对中文的支持也很友好,也支持js.