2013-07-26 38 views
0

我正在使用TCPDF庫來生成帶有PHP的PDF文件。我想使用自定義字體,因此我使用addTTFfont method添加了我的自定義TrueType字體文件。我想補充的字體是"Aller" from fontsquirrel.com未使用tcpdf自定義字體

$aller = $pdf->addTTFfont($_SERVER['DOCUMENT_ROOT'].'/includes/fonts/Aller/Aller_Rg.ttf', 'TrueTypeUnicode', '', 32); 

這在我的TCPDF字體文件夾中創建的文件aller_rg.php,aller_rg.ctg.z和aller_rg.z。 K_PATH_FONTS常數指向此目錄。 addTTFfont方法返回字體的字符串名稱。這將返回false,如果出現錯誤,所以這個問題可能不是這裏..

我又試圖使用的字體

$pdf->SetFont($aller, '', 16); // or $pdf->SetFont('aller_rg', '', 16); 
$pdf->Write(0,"abcdefg",'',0,'L',true,0,false,true,0); 

的PDF是沒有任何錯誤產生。當在瀏覽器預覽中查看時,字體顯然不是過敏,而只是一種通用的無襯線字體。當我在Mac的預覽應用程序中打開PDF時,使用字體的部分是空白的(沒有文本顯示)。

任何人都知道我在做什麼錯了?

回答

0

我有同樣的問題:

的TCPDF轉換字體沒有顯示,但一用以下鏈接轉換做: http://www.xml-convert.com/en/convert-tff-font-to-afm-pfa-fpdf-tcpdf

所以我比較了兩個發現了XML的轉換.com使用「TrueType」而不是「TrueTypeUnicode」作爲字體類型。對我來說,它試圖將參數更改爲「TrueTypeUnicode」。試試:

$aller = $pdf->addTTFfont($_SERVER['DOCUMENT_ROOT'].'/includes/fonts/Aller/Aller_Rg.ttf', 'TrueType', '', 32);