`
再逢山水
  • 浏览: 153378 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

PHP HTML 生成 PDF

    博客分类:
  • LAMP
阅读更多
有时我们需要使用脚本动态的创建PDF文档,这里介绍一些免费的开源PHP脚本来生成PDF 的方法。


1.FPDF: PDF生成器

FPDF是一个纯粹的通过PHP类来生成PDF文档的方法,需要生成的内容直接在PHP代码中来指定,生成文字,图片,线条等等,都有自己的方法。下面介绍一个用FPDF来生成”Hello World”的PDF文档:

<?php   
require(‘fpdf.php’);   
  
$pdf=new FPDF();   
$pdf->AddPage();   
$pdf->SetFont(‘Arial’,'B’,16);   
$pdf->Cell(40,10,’Hello World!’);   
$pdf->Output();   
?>  


要生成PDF文档,首先我们需要包括库文件fpdf.php。


然后,我们需要建立一个FPDF对象使用默认构造FPDF(),这种构造可以通过三个值即页面方向(纵向或横向),计量单位,和页面大小( A4,A5……),默认情况下,页面大小为A4,计量单位是毫米。


它也可以被明确地指明:

$pdf=new FPDF(‘P’,'mm’,'A4′);


然后用AddPage()函数来增加一个页面,左上角和页面的内容在默认情况下边距为1厘米,当然我们可以使用SetMargins()来改变。要生成一段文本,首先我们要使用SetFont()来选择一种字体和字号。

$pdf->SetFont(‘Arial’,'B’,16);


我们使用Cell()函数来输出一个文本。一个Cell()是一个载有文字的矩形区域。
最后,我们要关闭这个文件并且把它输出,这就是用到了$pdf->Output();,我们还可以在这里指定我们想要使用的文件名,如$pdf->Output(’sample.pdf’);
这里只是简要的分析了一个例子,如果想获得更多的帮助,大家可以浏览:http://www.fpdf.org



2.HTML2FPDF: HTML到PDF的转换


HTML2FPDF是一个PHP类库使用FPDF类库HTML文件转换为PDF文件。这个库由三个类别即PDF格式, HTML2FPDF和FPDF组成。


下面介绍一个用HTML2FPDF来转换HTML

<?php   
require('html2fpdf.php');   
  
$pdf=new HTML2FPDF();   
$pdf->AddPage();   
$fp = fopen("sample.html","r");   
$strContent = fread($fp, filesize("sample.html"));   
fclose($fp);   
$pdf->WriteHTML($strContent);   
$pdf->Output("sample.pdf");   
echo "PDF file is generated successfully!";   
?> 


首先,我们需要包括库文件html2fpdf.php,使用HTML2FPDF()构造函数来构造一个实例。



然后使用$pdf->AddPage()为新的PDF添加一个新的页面。这时我们可以使用PHP自带的文件操作函数来读取一个HTML文件,把这个HTML文件的内容传给函数$pdf->WriteHTML($strContent),这样HTML内容就被写入到PDF文件中了,最后和 FPDF 的操作一样,通过output(),将文件输出。



这也只是一个简单的例子,如果想获得更多的帮助,可以浏览:http://html2fpdf.sourceforge.net
这里有这个例子的代码供大家下载


另附: 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属性。

分享到:
评论

相关推荐

    TCPD类 PHP生成PDF417二维条码

    PHP通过TCPD类可生成PDF417二维条码。 使用方法:实例化类 TCPDF2DBarcode(文件tcpdf_barcodes_2d.php),使用getBarcodePNG方法即可生成。 例:新建个PHP文件 barcode.php &lt;?php require_once ("tcpdf_barcodes_...

    php生成PDF插件

    这是php 生成PDF的一个插件。 “HTML2PDF” ,它是把 html 代码转成pdf文件。 所以我要做的就是,用php 构建html 字符串。 详细看例子。很简单的,一看就明白。

    多个HTML利用php批量生产PDF报告

    为了实现批量化,利用php脚本实现HTML报告批量生产PDF

    Web页面生成PDF(html to pdf)

    wkhtmltopdf,支持web页面生成PDF,比其他pdf生成工具兼容性好一点,易用一点,方便一点。PHP html to pdf

    MPDF类库插入HTML生成PDF

    生成PDF所需的MPDF类库,使用MPDF可以直接将HTML插入到PDF中来生成PDF文件,使用案例参考链接:https://www.jianshu.com/p/90b431070a0c

    mPDF一个将UTF8编码的HTML生成PDF文件的PHP库

    它基于FPDF和HTML2FPDF,并具有许多增强功能

    PHP实现HTML生成PDF文件的方法

    主要介绍了PHP实现HTML生成PDF文件的方法,可实现linux中利用HTML2FPDF与wkhtmltoimage把网页html直接生成pdf格式的文件,需要的朋友可以参考下

    强大的php生成word ,html,rtf,pdf框架(包含中文文档)

    添加GD生成图片 14 添加水印 14 添加对象 15 添加标题 15 添加目录 16 表格 17 添加表格 17 添加行 17 添加单元格 17 单元格样式 19 表格样式 20 页脚 22 页眉 23 模版 23 其他问题修改 25 解决文本缩进问题 25 表格...

    MPDF php生成pdf类

    mpdf将html文件生成pdf 完美支持css 完美支持书签,分页

    使用PHP把HTML生成PDF文件的几个开源项目介绍

    但是如今,已经有很多函数库可以使用了,并且能够从你提供的HTML文件生成PDF文档。这让原先耗时的工作变得非常简单了。 FPDF是很早就被使用的,其特点如下: FPDF FPDF是一个允许使用纯PHP生成PDF文档的PHP类,...

    mpdf6.0 PHP生成pdf插件

    PHP代码通过利用mpdf插件可以将html文档生成pdf文档。

    PHP库从UTF-8编码HTML生成PDF文件-PHP开发

    mPDF是一个PHP库,可以从UTF-8编码HTML生成PDF文件。 它基于FPDF和HTML2FPDF(请参阅CREDITS),具有许多增强功能。 mPDF由Ian Back编写,并根据GNU GPL v2许可发布。 N mPDF是一个PHP库,可以从UTF-8编码HTML生成...

    PHP生成PDF所需的FPDF类库

    经常会要生成PDF文件,那么PDF类库必不可少,这个类库文件可以插入HTML代码生成PDF文件,也可以单独写入每行文字制作PDF文件,使用方式参考链接:https://www.jianshu.com/p/b4c55c675c06

    laravel-pdf:从Laravel 5内部HTML轻松生成PDF文档

    Laravel PDF:Laravel 5的mPDF包装器使用此mPDF包装器,可以从Laravel内部HTML轻松生成PDF文档。安装在composer.json需要此软件包,或通过运行以下命令进行安装: composer require niklasravnsborg/laravel-pdf注意...

    html-pdf:使用wkhtmltopdf从具有自定义页眉和页脚HTML生成PDF

    :page_with_curl: 使用wkhtmltopdf v2021.4.115从具有自定义页眉和页脚HTML生成PDF 错误很明显:trade_mark:-MATRIX NodeJs LTS版本要求 &gt;=12.13.0 建立在NodeJ上 v14.16.0 必须使用async和await关键字。 仅支持最新...

    thinkphp使用mpdf导出html为pdf文件

    thinkphp使用mpdf将html导出为pdf文件。里面包含了mpdf资源包。包版本为6.1.3。适合php5.6.27使用,新版本的mpdf需要php7的支持。

    使用PHP生成PDF方法详解

    但是如今,已经有很多函数库可以使用了,并且能够从你提供的HTML文件生成PDF文档。这让原先耗时的工作变得非常简单了。 FPDF FPDF是一个允许使用纯PHP生成PDF文档的PHP类,换句话说,没有使用PDFlib 函数库。FPDF中...

Global site tag (gtag.js) - Google Analytics