- What is FPDF?
- FPDF is a PHP class which allows to generate PDF files with pure PHP, that is to say without using the PDFlib library. The advantage is that PDFlib requires a fee for a commercial usage. F from FPDF stands for Free: you may use it for any kind of usage and modify it to suit your needs.
FPDF 可以让我们创建 pdf 文件而不用去调用 PDFlib
这里可以下到最新的 windows 下的版本:
http://www.fpdf.org/en/dl.php?v=152&f=zip
这里可以下到中文手册:
http://www.fpdf.org/en/dl.php?id=72
若要其他版本可以到这里下到:
http://www.fpdf.org/
这也是 FPDF 的官方网站, 如果有问题可以去上面问, 回复的挺快的, 我上午问了 1 个问题他们下午就回了不过那上面的时间都是美国时间
下面是一个很简单的用 FPDF 创建一个 pdf 文件并添加一页的例子
- define('FPDF_FONTPATH','fpdf152/font/');
- require('fpdf152/fpdf.php');
- $pdf = new FPDF;
- $pdf->AddPage();
- $pdf->Output('a.pdf', 'D');
- ?>
当然也可以用 $pdf->open(); 来新建一个 pdf 文件
但是在这里, Addpage() 包含了 open(), 他同时完成了新建一个 pdf 文件和添加 1 页两个步骤
上面例子里的 define('FPDF_FONTPATH','fpdf152/font/'); 定义了存放字体文件的目录
具体下载了压缩包后就看到那个 font 文件夹了, 只要指向那个文件夹就行了
上面这段程序还不能显示任何东西
现在来加两句
- define('FPDF_FONTPATH','fpdf152/font/');
- require('fpdf152/fpdf.php');
- $pdf = new FPDF;
- $pdf->AddPage();
- $pdf->SetFont('arial');
- $pdf->Text(5,20,'test pdf');
- $pdf->Output('a.pdf', 'D');
- ?>
SetFont() 设定字体, 这步在第 1 次调用 FPDF 的时候一定要, 否则 pdf 文件打开时将会提示没有定义字型而什么都不显示
这里最好定义比较常用的字体, 并且中文不支持
要支持中文或支持比较偏的字体要用到 AddFont(), 但是我测试暂时没通过, 希望哪位通过的可以指点一下 ^^
Text() 打印一个字符串, 横坐标为 5, 纵坐标为 20, 字符串内容为 test pdf
关于最后的 Output() 里的参数'D'可以参照手册里, 写的很清楚了
这样导出的 pdf 文件就会显示'test pdf'了
如果兴趣好, 再加上张图片
- define('FPDF_FONTPATH','fpdf152/font/');
- require('fpdf152/fpdf.php');
- $pdf = new FPDF;
- $pdf->AddPage();
- $pdf->SetFont('arial');
- $pdf->Text(5,20,'test pdf');
- $pdf->Image('jianxin_mark.jpg', 5, 30, 60, 50);
- $pdf->Output('a.pdf', 'D');
- ?>
Image() 可以在 pdf 中插入图片, 前面是文件名, 要包括路径, 5 是横坐标, 30 是纵坐标, 60 是图片宽度, 50 是高度
ok, 这样一个又有文字又有图片的 pdf 文件就建立了 ^^
其实还有很多功能, 手册中都有写, 但不是很详细, 需要各位自己去研究发掘了 ^^
来源: https://www.php1.cn/detail/php-994ea7a90c.html