萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> 關於jpGraph的中文顯示。。。

關於jpGraph的中文顯示。。。

前兩天看了這裡的一篇帖。。。有JPGRAPH這個東東,覺得它真的非常實用,真的幫我們在圖形統計方面省了不少功夫,於是一直在試用,後來看到:
Note: This information is only given here for very advanced users. No free support will ge given in the case you run into difficulties trying to add new fonts. At the moment adding new fonts require code modifications as outlined below.
這裡時,我那熱情沒了一大半。。。。這像我這樣的菜鳥就只只能用simsun.ttf嗎?後來我試著把很多的中文字體的名字改為simsun.ttf,發現大部分的中文都可以正常顯示。。。(可能是全部中文),不敢獨享,現把使用方法帖出來跟大家一起分享(我想也許已經有很多高手知道方法,那我就在這裡獻丑了。。).
在使用有文字顯示的類時,必須事先使用SetFont方法來設置字體其有三個參數:字體名,字型,大小。目前在中文方面,JPGraph只支持simsun字體,如果要使用那麼就要用以下方法添加:
先在jpgraph.php裡用:DEFINE ("TTF_DIR","/usr/local/fonts/ttf/");定義好字體的路徑(以後就可以把字體放到這裡了)
然後在jpgraph.php裡找到這行注釋“ // Chinese font ”
在其下面用像這樣的方法定義:define("FF_SIMFANG",9);(其中為了容易理解,其格式為:使用“FF_”開頭加字體名,“9“為該常量的值,只要不和他原來的值相同,哪個數值都沒問題的,只要不太大)
現在進行影射:
找到這個注釋"// CONSTRUCTOR"(到這裡,聰明的你一定知道怎麼回事了),在數組裡加入類似:
FF_SIMFANG=>array(FS_NORMAL=>'simfang',FS_BOLD=>',FS_ITALIC=>',FS_BOLDITALIC=>'),的項,該數組是有四個項,第一個為標准字體,第二個為粗體,第三個為斜體,第四個是粗斜體。每一項對應一個字體文件,他們的值就是去了擴展名的字體文件名,沒有的話就不用填,除了標准以外。
來到這裡,一般的英文字體的添加已經完成,但中文就還是被限制了,關鍵在以下地方:
找到LanguageConv類,即查找“class LanguageConv”
在函數Convert()裡“elseif( $aFF === FF_SIMSUN )”這個地方用或(“||”)添加你之前定義的字體名,如”$aFF===FF_SIMFANG“
好,現在你試試,大功告成!!



copyright © 萬盛學電腦網 all rights reserved