老手勿喷
一、fpdf支持中文
其实很简单
下载fpdf 的chinese包(里面包括一个chinese.php 以及一个示例文件)
以下是示例文件内容 ex.php
require ('chinese.php');
$pdf=new PDF_Chinese();
$pdf->AddBig5Font();
$pdf->AddPage();
$pdf->SetFont('Big5','',20);
$pdf->Write(10,'zxc123你好');
$pdf->Output();
把这个两个文件移到fpdf文件夹下访问运行后,就能得到一个包含中文的pdf
二、fpdf设置中文字体
这里以微软雅黑为例
下载微软雅黑字体(如msyh.ttf)
把 下载后的字体copy到 fpdf17\font
并在这个文件夹下,新建一个php 里面内容如下
require('../makefont/makefont.php');
MakeFont('msyh.ttf');
访问运行后,得到两个文件msyh.php msyh.z
修改ex.php 为一下内容
require ('chinese.php');
$pdf = new PDF_Chinese ();
$pdf -> AddGBFont ('msyh','微软雅黑');
$pdf -> Open ();
$pdf -> AddPage ();
$pdf -> SetFont ('msyh', '', 20);
$pdf -> Write (5, 'zxc123你好');
$pdf -> Output();
如果保存编码为gbk 那就能得到一个微软雅黑字体的正常pdf
三、utf8编码下fpdf中文
这个只需要把中文从gbk编码到utf8,用iconv 轻松解决require ('chinese.php');
$pdf = new PDF_Chinese ();
$pdf -> AddGBFont ('msyh',iconv("UTF-8","gbk",'微软雅黑'));
$pdf -> Open ();
$pdf -> AddPage ();
$pdf -> SetFont ('msyh', '', 20);
$pdf -> Write (5, iconv("UTF-8","gbk",'zxc123你好'));
$pdf -> Output();
结果如下
fpdf还是很强大的,另外highcharts也是前端经常用到。附上一个demo
highcharts 画图+fpdf输出图表 效果如下