วันครอบครัว


สร้าง PDF ภาษาไทยไฟล์แรกด้วย mPDF

คู่มือการเรียนรู้ mPDF

บทเรียนดีๆ สำหรับผู้ที่ต้องการแบ่งปัน บทเรียนของคุณอาจมีค่าสำหรับอีกหลายๆ คน

beta version

สร้าง PDF ภาษาไทยไฟล์แรกด้วย mPDF

มานพ กองอุ่น mPDF php html 1,106

ในบทเรียนรู้นี้เรามาทดลองการสร้างไฟล์ PDF เพื่อทดลองใช้งานภาษาไทย ในที่นี้จะใช้ข้อความจาก http://lorem.in.th/ ซึ่งเป็น Website ไว้สร้างข้อความทดสอบนั่นเอง

เอาล่ะครับมาดู Code โปรแกรมกันเลยดีกว่า ในที่นี้เราสร้างไฟล์ index.php ใน project ของเรา ดังนี้

ใน mPDF นั้นมี Font ที่แสดงผลภาษาไทยชื่อว่า Garuda หรือ ครุฑ ที่เป็น OpenSource แถมมาด้วยดังนั้น PDF ไฟล์ ของเราก็สามารถใช้งานภาษาไทยได้ทันที แต่หากต้องการเปลี่ยน Font ก็สามารถทำได้เช่นกัน โดยจะกล่าวถึงในบทเรียนรู้ถัดๆ ไป

มาเริ่มจากการสร้างไฟล์ index.php แล้วเขียนโปรแกรมลักษณะดังนี้

<?php
include_once 'vendor/autoload.php';

$mpdf = new mPDF();

$content = '

<style>
.container{
    font-family: "Garuda";
    font-size: 12pt;
}
p{
    text-align: justify;
}
h1{
    text-align: center;
}
</style>

<div class="container">
<h1>ข้าวปั้น</h1>
<p>
เซ็นเซอร์งั้นสเตเดียมรุสโซก๋ากั่น วิปจุ๊ยแอ็คชั่นอาข่าคอร์ป โกเต็กซ์สต๊อก แอ๊บแบ๊ว โต๋เต๋ถ่ายทำโหลยโท่ยวีน เพนตากอนแหววสเปคสเตชันเจี๊ยว โหลนเพาเวอร์ธุหร่ำบาร์บี้ โอยัวะเหมย โครนาแบตเพียบแปร้เทเลกราฟเคส เวิลด์เพลย์บอยอุด้งอพาร์ทเมนท์ดีไซน์เนอร์ เบิร์นสเตเดียมสแล็กเมเปิล แอ๊บแบ๊ว แพทยสภาบัสแซ็กโซโฟนเลคเชอร์ กรุ๊ปมาเฟีย ซีเรียสไอเดียโทรโข่งเซ็นเตอร์ ม้งโปรเจกเตอร์ราเมน

</p>

<p>
เจล สตาร์ท สต๊อคเอ๋อเอ๋อแคร็กเกอร์แบต เก๋ากี้ซิลเวอร์ฟาสต์ฟู้ดอุด้งแฟลช ภควัทคีตาออร์แกนิกโยโย่ ตะหงิดแฟล็ตมหภาคซิ่ง สี่แยกรัมคีตราชันเพรสซี้ แอดมิชชั่นเพนตากอนโบรกเกอร์ตู้เซฟพันธกิจ บอดี้ไนท์คอรัปชั่น โดมิโนไมค์ ลิสต์สปิริตสเตอริโอพันธกิจ โอเคแพทยสภาโอเพ่น คาร์ป๋า เฮียอันเดอร์ เอนทรานซ์ นายพรานเมี่ยงคำ

</p>

<p>
โปรเจ็คไฮเอนด์แชมปิยองเบนโล ราสเบอร์รี แคชเชียร์โบว์ลิ่งอริยสงฆ์ คลับแจ็กพอตกรอบรูป ไอซียูคำสาป แจ็กพอตโปรโมเตอร์สเกตช์ เที่ยงวันฟีเวอร์เสกสรรค์ยะเยือก ครัวซองต์จูนคอมพ์ วอฟเฟิลอินเตอร์ติงต๊อง ถ่ายทำแพทเทิร์นแบคโฮเกสต์เฮาส์ซาร์ สุนทรีย์วาไรตี้แม่ค้าเทคนิว ดีเจเฉิ่มโอเพ่น ซิตี้ว่ะเกรด แอโรบิคอุปนายก อิกัวนาไวอากร้าจึ๊กมาร์ชซินโดรม บูมแคทวอล์คตังค์แซ็กสะบึม

</p>

<p>
เทวาธิราชโหลนแมมโบ้ สปิริต บราคำสาป แฟกซ์โอเพ่นโมเดลแอปเปิลวโรกาส มาร์จินฮองเฮาป่าไม้ ป๋าออกแบบแช่แข็งวาไรตี้ไนน์ ธัมโมไวอากร้าแซ็กโซโฟนสเตอริโออันตรกิริยา สต๊อกเนิร์สเซอรี ไฮไลต์ปาสเตอร์แบล็ควอลซ์มอบตัว ม้านั่งคอนแทคเที่ยงวัน คอร์รัปชั่น พรีเมียมสุนทรีย์ เยอร์บีร่าโชห่วยมาราธอนควิกโรแมนติก โมเต็ลซูมสเตริโอเซ็กซี่คองเกรส สเตชั่นอยุติธรรม ซิตีเคสขั้นตอนสเตอริโอเซ็กซ์

</p>

<p>
อึมครึม แฮนด์แรลลี่ มือถือแฟรีอุรังคธาตุซาบะโมเดล มายองเนสจอหงวนกีวี เซอร์วิส เมาท์ สันทนาการแซวสตูดิโอตรวจสอบมือถือ รัมออร์แกนิก วิลเลจเซลส์แมนซาตานแบ็กโฮ ออยล์มยุราภิรมย์ซิลเวอร์ไบเบิลกิฟท์ ฉลุยกาญจนาภิเษกตัวเองเฝอมาร์ค อันเดอร์กรอบรูปวันเวย์แจ็กพ็อต สเตชั่นเอ็นทรานซ์หลวงพี่ เอ็นเตอร์เทน มาเฟียอีโรติกยะเยือกสันทนาการ ปาร์ตี้

</p>
</div>

';
$mpdf->WriteHTML($content);

$mpdf->Output();
?>
  • เริ่มจากการสร้าง Object $mpdf
  • กำหนดตัวแปร $content แล้วเขียนคำสั่ง HTML ในการจัดรูปแบบต่างๆ โดยมีการกำหนดใน CSS ในที่นี้ให้เรียกใช้ Font Garuda ซึ่งเป็น Font ภาษาไทย และกำหนดเนื้อหาต่างๆ ในรูปแบบ HTML
  • จากนั้นนำมาใส่ใน method WriteHTML()
  • แล้วเรียก method Output(); เพื่อให้แสดงเป็น PDF ไฟล์
  • จะได้ Web Application ที่แสดงเป็น PDF เมื่อเรียก URL http://yourproject/index.php ดังนี้


หากบทเรียนรู้มีความผิดพลาดประการใด หรือมีข้อเสนอแนะกรุณาแจ้ง contact@programmerthailand.com
มานพ กองอุ่น

มานพ กองอุ่น
admin

  • 2 เพื่อน
  • 2 ผู้ติดตาม
  • 734 โพสต์
กลับขึ้นบน