การสร้าง PDF ด้วย laravel-dompdf และเพิ่ม font ภาษาไทย
ส่วนนี้จะเป็นส่วนของการสอนลง laravel-dompdf และสร้างหน้า PDF (ในนี้ใช้เป็นเวอร์ชั่น 5.4)
- ติดตั้ง laravel-dompdf โดยใช้คำสั่ง
composer require barryvdh/laravel-dompdf
เมื่อติดตั้งสำเร็จจะขึ้นตามรูปที่ 1 แต่ถ้าหากติดตั้งไม่สำเร็จให้ลง composer ใหม่(คงจะลงเป็นกันนะคิคิ) หรือใช้คำสั่ง
composer update
2.แก้ไขไฟล์ config/app.php ในส่วนของ providers โดยเพิ่ม
Barryvdh\DomPDF\ServiceProvider::class,
และในส่วนของ aliases เพิ่ม
'PDF' => Barryvdh\DomPDF\Facade::class,
3.สร้าง PDFController โดยใช้คำสั่ง
php artisan make:controller PDFController
เมื่อสร้าง PDFControllrt สำเร็จจะเป็นดังรูปที่ 2 (ในส่วนนี้จะไม่สำเร็จถ้าไม่ติดตั้ง dompdf ให้ย้อนไปดูข้อ1นะค่ะ)
4.เขียนฟังก์ชันลง PDFController
(อันนี้แล้วแต่ว่าใครจะเอาข้อมูลอะไรออกมาแสดงที่หน้า pdf)ในส่วนของฟังก์ชัน pdf จะใช้ $Orders มาเก็บข้อมูลจาก model Order เพื่อนำไปแสดงหน้า pdf และต้องมีการ
use PDF;
5.ในส่วนของ routes/web.php
6.และมาสร้างหน้า view โดยสร้างไฟล์ที่ resources/views ชื่อว่า pdf.blade.php
สำเร็จจจจจจ!!!!!!!!!!!!!(แต่ยังใช้ font ภาษาไทยไม่ได้นะ)
(อันนี้แล้วแต่เพื่อนตกแต่งในหน้า views/pdf.blade.php)
ส่วนนี้จะมาสอนให้ dompdf สามารถใช้ font ภาษาไทยได้
- ดาวโหลดตัว font ภาษาไทยมาในนี้ใช้เป็น THSarabunNew (หรือดาวน์โหลดได้ที่นี้)
จะได้ไฟล์นี้ใส่ไว้ใน public/fonts
2.และสร้างโฟร์เดอร์ fonts ลงใน storage
3.และเรียกใช้ font จากหน้า view ใช้คำสั่ง
ไว้ใน <style>รูปที่ 8 </style>
สร้าง css ไว้ใน <style>รูปที่ 8 </style> เพื่อไปใช้กับตัวอักษร
และในส่วนของ haed ใช้คำสั่ง
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
4.และใน body ก็เขียนตามข้อ6ด้านบนได้เลยยย
แค่นี้ font ภาษาไทยก็มาแล้วววว