|
PHP กับ PDF ภาษาไทย พิมพ์ข้อความบนเอกสาร PDF ภาษาไทย ด้วย FPDF |
PHP กับ PDF ภาษาไทย พิมพ์ข้อความบนเอกสาร PDF ภาษาไทย ด้วย FPDF เห็นถามกันบ่อย ๆ ในกระทู้ เกี่ยวกับปัยหาภาษาไทยบน FPDF ที่แสดงผลไม่ถูกต้อง หรือแสดงผลเป็นภาษาไทยที่อ่านไม่ออก ซึ่งปัญหานี้สามารถแก้ไขได้อย่างง่าย ๆ ถ้าแก้ไขถูกจุด ซึ่งหลัก ๆ แล้วก็ไม่มีอะไรมากมาย เพียงดาวน์โหลด Font และเรียกใช้ Font ที่สามารถแสดงผลหรือรองรับภาษาไทยได้ ก็สามารถแก้ไขปัญหานี้ได้แล้ว
Screenshot
จากบทความ Go to : PHP PDF
ลองเพิ่มบรรทัดข้อความที่เป็นภาษาไทย
$pdf->Cell(0,20,'สวัสดี ชาวไทยครีเอท',0,1,"C");
Code (PHP)
<html>
<head>
<title>ThaiCreate.Com PHP PDF</title>
</head>
<body>
<?php
require('fpdf.php');
$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Times','B',16);
$pdf->Cell(0,20,'สวัสดี ชาวไทยครีเอท',0,1,"C");
$pdf->Output("MyPDF/MyPDF.pdf","F");
?>
PDF Created Click <a href="MyPDF/MyPDF.pdf">here</a> to Download
</body>
</html>
Screenshot
จะเห็นว่าไม่สามารถแสดงผลภาษาไทยได้อย่างถูกต้อง เพราะ Font ที่เรียกใช้งานนั้นไม่รองรับภาษาไทย
วิธีแก้ไข
หาให้ Font ที่รองรับภาษาไทย ซึ่งมีอยู่หลายตัว เช่น angsa ซึ่งเมื่อหาได้แล้วให้จัดเก็บไว้ในโฟเดอร์ font ดังภาพ ซึ่งไฟล์ font จะเป็น .php เช่น angsa.php
define('FPDF_FONTPATH','font/');
ประกาศตัวแปร FPDF_FONTPATH เพื่อเรียกโฟเดอร์ที่จัดเก็บ font
$pdf->AddFont('angsa','','angsa.php');
$pdf->SetFont('angsa','',36);
$pdf->Cell(0,20,iconv( 'UTF-8','TIS-620','สวัสดี ชาวไทยครีเอท'),0,1,"C");
AddFont และ SetFont เพื่อเรียกใช้ Font ที่ต้องการ พร้อมทั้งใช้ iconv() เพื่อ Convert ให้อยู่ในรูปแบบ TIS-620
Code เต็ม ๆ
Code (testpdf.php)
<html>
<head>
<title>ThaiCreate.Com PHP PDF</title>
</head>
<body>
<?php
require('fpdf.php');
define('FPDF_FONTPATH','font/');
$pdf=new FPDF();
$pdf->AddPage();
$pdf->AddFont('angsa','','angsa.php');
$pdf->SetFont('angsa','',36);
$pdf->Cell(0,20,iconv( 'UTF-8','TIS-620','สวัสดี ชาวไทยครีเอท'),0,1,"C");
$pdf->Output("MyPDF/MyPDF.pdf","F");
?>
PDF Created Click <a href="MyPDF/MyPDF.pdf">here</a> to Download
</body>
</html>
Screenshot
แสดงผลภาษาไทยได้ตามต้องการ จะปรับขนาดหรืออื่น ๆ ก็สามารถทำได้ไม่ยาก
Download Code !!
บทความอื่น ๆ ที่เกี่ยวข้อง
Go to : PHP PDF
|
|
|
|
|
|