其實我的正職跟網頁一點關係都沒有(爆)
moodle Certificate Module 是一個讓 moodle 可以做出結業證書的 module,不過以原本的狀況而言,沒辦法很正確的生出中文的 pdf,這時候就需要動一些手腳。
你可以從 type/unicode_landscape/certificate.php 知道他用的 tcpdf 是 moodle 本身的
include '../../lib/tcpdf/tcpdfprotection.php'; require_once('../../lib/tcpdf/config/lang/eng.php'); include '../../lib/tcpdf/tcpdf.php';
然後我發現新版的 tcpdf 裡面有 CID-0 的支援,就索性照著 TCPDF Fonts 把一些字型丟進去跑跑看,像是文泉驛正黑體、王漢宗自由字型。
後來想想,似乎沒有不用這麼麻煩。直接用 arialunicid0 這個 tcpdf 有的設定就好,把他的設定改成我要的中文
$enc='UniCNS-UTF16-H'; $cidinfo=array('Registry'=>'Adobe','Ordering'=>'CNS1','Supplement'=>0); include(dirname(__FILE__).'/uni2cid_ac15.php');
再把 certificate 的字型稍微換一下就好,把原本的 FreeSerif 跟 FreeMono 換成 arialunicid0,再注意一下,新的 tcpdf 已經沒有 TCPDF_Protection 這個 class,直接 new TCPDF 就好。
這樣做出來的 pdf 也比直接嵌入wang ttf 的來的小,大概 22K 附近,效果也還不錯。在這邊備忘一下,要不然之後大概又忘記怎麼做了 XD