昨天研究如何在既有的PDF 档案上放入中文字,虽然找到支援中文的FPDF ,但是有些Unicode 字集我实在试不出如何显示(如:堃) 。
我的同事建议我用图形来解决看看,以下就是我的实验过程(我用的是Windows 平台) 。
我用的相关技术如下:
名称 | 说明 | 下载网址 |
---|---|---|
FPDF | PHP 上用来产生PDF 的第三方套件 | [http://www.fpdf.org/](http://www.fpdf.org/) |
FPDI | 用来载入一个已存在的PDF 档案,以供FPDF 使用 | [http://fpdi.setasign.de/](http://fpdi.setasign.de/) |
香港参考宋体(DFSongSd.ttf) | 包含许多Windows 内建中文字体所没有的中文字 | [http://glyph.iso10646hk.net/index.jsp](http://glyph.iso10646hk.net/index.jsp) |
GD 2 | PHP 产生图形用的延伸套件 | PHP Win32 内建 |
iconv | 转换文字编码 | PHP Win32 内建 |
首先,我利用FPDI 来载入一个已存在的PDF :
<?php
error_reporting (E_ALL);
require_once ('FPDI/FPDI.php');
// 建立 FPDI 物件
$pdf = new FPDI();
// 載入現在 PDF 檔案
$page_count = $pdf->setSourceFile("test.pdf");
// 匯入現在 PDF 檔案的第一頁
$tpl = $pdf->importPage(1);
// 在新的 PDF 上新增一頁
$pdf->addPage();
// 在新增的頁面上使用匯入的第一頁
$pdf->useTemplate($tpl