function _putType0($font) { //Type0 $this->_out('/Subtype /Type0'); $this->_out('/BaseFont /'.$font['name'].'-'.$font['CMap']); $this->_out('/Encoding /'.$font['CMap']); $this->_out('/DescendantFonts ['.($this->n+1).' 0 R]'); $this->_out('>>'); $this->_out('endobj'); //CIDFont $this->_newobj(); $this->_out('<</Type /Font'); $this->_out('/Subtype /CIDFontType0'); $this->_out('/BaseFont /'.$font['name']); $this->_out('/CIDSystemInfo <</Registry (Adobe) /Ordering ('.$font['registry']['ordering'].') /Supplement '.$font['registry']['supplement'].'>>'); $this->_out('/FontDescriptor '.($this->n+1).' 0 R'); $W='/W [1 ['; foreach($font['cw'] as $w) $W.=$w.' '; $this->_out($W.']]'); $this->_out('>>'); $this->_out('endobj'); //Font descriptor $this->_newobj(); $this->_out('<</Type /FontDescriptor'); $this->_out('/FontName /'.$font['name']); $this->_out('/Flags 6'); $this->_out('/FontBBox [0 0 1000 1000]'); $this->_out('/ItalicAngle 0'); $this->_out('/Ascent 1000'); $this->_out('/Descent 0'); $this->_out('/CapHeight 1000'); $this->_out('/StemV 10'); $this->_out('>>'); $this->_out('endobj'); } } ?> 将以上代码存为chinese.php即可引用。但用它只能得到一种字体。为了支持所有中文字体,可用ttf2pt1程序将TrueType字体转化pt1字体,一个一个地转(具体方法在FPDF的教程中有详细说明)。为了支持其他中文字体,养分要修改上面的chinese.php,如下: 1: Replace the following line in the AddGBFont() method: function AddGBFont($family='GB',$name='STSongStd-Light-Acro') { $cw=$GLOBALS['GB_widths']; // $name='STSongStd-Light-Acro'; $CMap='GBKp-EUC-H'; ........ 2: This is a Sample. <?php require('chinese.php'); $pdf=new PDF_Chinese(); $pdf->AddGBFont('simsun','宋体'); $pdf->AddGBFont('simhei','黑体'); $pdf->AddGBFont('simkai','楷体_GB2312'); $pdf->AddGBFont('sinfang','仿宋_GB2312''); $pdf->Open(); $pdf->AddPage(); $pdf->SetFont('simsun','',20); $pdf->Write(10,'简体中文汉字‘); $pdf->SetFont('simhei','',20); $pdf->Write(10,'简体中文汉字'); $pdf->SetFont('simkai','',20); $pdf->Write(10,'简体中文汉字‘); $pdf->SetFont('sinfang','',20); $pdf->Write(10,'简体中文汉字'); $pdf->Output(); ?>
(编辑:焦作站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|