ตอนที่แล้ว เป็นการใช้งาน jpgraph-1.27.1 มีปัญหาเรื่องการใช้งานภาษาไทย ซึ่ง script หา font ภาษาไทยไม่เจอทำให้ไม่สามารถแสดงข้อความในกราฟให้เป็นภาษาไทยได้ อันที่จริงมันก็มีวิธีการแก้ไขได้อยู่ แต่ยังทำไม่สำเร็จเนื่องจากมีเวลาจำกัด (อันที่จริงคือความชำนาญในการแก้ไข script อยู่ในระดับต่ำ ประกอบกับความพยายามในการแก้ไข อยู่ในระดับต่ำ อิอิ)
ตอนนี้จึงได้ปรับเปลี่ยนมาใช้งาน jpgraph-3.5.0b1 เพราะมีเสียงเล่าอ้างว่าสามารถใช้งานร่วมกับภาษาไทยได้เป็นอย่างดี ผลที่ได้จึงเป็นเช่นนี้แล...
วิธีการก้อไม่ยากเช้ายากเย็น เพราะว่า jpgraph-3.5 สร้าง fonts folder มาให้อยู่แล้วจึงเดาว่า script กำหนดให้ใช้ font ใน fonts folder ได้โดยไม่ต้องแก้ไข script ให้มากมายและวุ่นวายเหมือน jpgraph-1.27.1 เพียงแค่
1. เลือก ttf font ภาษาไทยที่เราต้องการ upload ไปไว้ใน fonts folder ของ jpgrap ในที่นี้เลือกใช้ TH Sarabun หากจะใช้ font อื่นๆ ก็น่าจะได้???
2. แก้ไข jpgraph_ttf.inc.php ในส่วนของ FF_USERFONT1 เนื่องจาก script ทำการ DEFINE font ไว้อยู่แล้วแต่ยังไม่ได้มีการใช้งาน เพราะยังไม่ได้กำหนดตัว font ที่จะใช้งานเข้าไป
ของเดิม
/* Placeholders for defined fonts */
FF_USERFONT2 => array(
FS_NORMAL =>'',
FS_BOLD =>'',
FS_ITALIC =>'',
FS_BOLDITALIC =>'' ),
แก้ไขเป็น
/* Placeholders for defined fonts */
FF_USERFONT1 => array(
FS_NORMAL =>'THSarabun.ttf',
FS_BOLD =>'THSarabunBold.ttf',
FS_ITALIC =>'THSarabunItalic.ttf',
FS_BOLDITALIC =>'THSarabunBoldItalic.ttf' ),
เสร็จแล้วก็ save file
เวลาจะใช้งานก็ SetFont ให้เป็น FF_USERFONT1 ได้เลย
$graph->title->SetFont(FF_USERFONT1,FS_BOLD,16);
** คำถามประจำบันทึก "บันทึกนี้มีตัว f อยู่กี่ตัว"
(ไม่ต้องส่งคำตอบมาก็ได้ เพราะถามเฉยๆ อิอิ)
บันทึกนี้มี pop-up โฆษณาแฝงอยู่นะครับ ผมรบกวนเอาออกด้วยได้ไหมครับ
ถ้าไม่ได้ใส่เองก็น่าจะแฝงมาจากตัวนับจำนวนผู้อ่านด้านล่างนี้นะครับ
น่าจะแฝงมากับตัวนับ แต่ไม่แน่ใจว่าตัวไหน ขอบคุณครับ