วันนี้มาถึงคำสั่งสุดท้ายในซีรี่ พิมพ์ข้อความลงในเอกสาร ของ fpdf เมื่อผมเริ่มซีรี่ด้วยคำสั่ง Text ซึ่งเป็นคำสั่งที่ง่ายๆที่สุดในบรรดา สี่พี่น้อง แล้วก็ตามมาด้วยคำสั่ง Write ซับซ้อนและมากความสามารถขึ้นมาอีกนิดนึง จนเมื่อวันก่อนลงเอยคำสั่ง Cell ซับซ้อนกว่าคำสั่ง Write อีก สามารถตีเส้นกรอบ และทำอย่างอื่นได้อีกหลายอย่าง แต่ดังที่ผมพูดไว้ในบทว่าด้วยเรื่อง Cell ว่าคำสั่งนี้จะไม่ปัดบรรทัดให้อัตโนมัติ เมื่อตัวอักษรยาวกว่ากรอบที่กำหนด

และแล้ววันที่โลกทั้งโลกรอคอยก็มาถึง ทูเดย์ ไอจะแนะนำวิธีการใช้งานคำสั่ง MultiCell ที่ทั้งพารามิเตอร์และการใช้งานเหมือนกันกับคำสั่ง Cell แต่เพิ่มความสามารถตัดขึ้นบรรทัดใหม่ให้ด้วย เมื่อความยาวของข้อความที่อยู่ในกรอบ ยาวเกินความกว้าง

มาดูกัน เหยาะซ้อส (source) ก่อนเป็นอันดับแรก แล้วค่อยเอาผักใส่ตามหลัง

Live Demo

<?php
define('FPDF_FONTPATH','font/');
 
require('fpdf.php');
 
$pdf=new FPDF();
 
// เพิ่มฟ้อนต์ภาษาไทยเข้ามา ตัวธรรมดา กำหนด ชื่อ เป็น angsana
$pdf->AddFont('angsana','','angsa.php');
 
//สร้างหน้าเอกสาร
$pdf->AddPage();
 
// กำหนดฟ้อนต์ที่จะใช้  อังสนา ตัวธรรมดา ขนาด 14
$pdf->SetFont('angsana','',14);
 
// พิมพ์ข้อความลงเอกสาร  มีกรอบด้วย
$pdf->MultiCell( 20  , 5 , iconv( 'UTF-8','cp874' , 'นี่คือข้อความที่ตั้งใจให้ยาวเลยความกว้างของกรอบเซลล์' ) );
 
$pdf->Output();
?>

MultiCell(float w, float h, string txt [, mixed border [, string align [, boolean fill]]])

คำอธิบาย

สำหรับพิมพ์ข้อความลงในเอกสาร pdf

พารามิเตอร์

w : (ตัวเลข) ความกว้างของกล่องข้อความ ถ้าระบุเป็น 0 กล่องจะกว้างไปจนถึงกั้นขวาของกระดาษ
h : (ตัวเลข) ความสูงของกล่องข้อความ
txt : (ตัวหนังสือ) ข้อความที่ต้องการพิมพ์
border : เส้นขอบของกล่องข้อความ

    ค่าที่เป็นไปได้

  • 0 : ไม่มีขอบ (default)
  • 1 : มีขอบ
    นอกจากเป็น 0 1 แล้วเรายังระบุได้ด้วยว่าเอาเฉพาะกรอบด้านไหนได้ด้วย

  • L: ขอบซ้าย
  • T: ขอบบน
  • R: ขอบขวา
  • B: ขอบล่าง

align : (ตัวหนังสือ) จัดเรียงข้อความภายในกล่อง

    ค่าที่เป็นไปได้

  • L or ค่าว่าง : ชิดซ้าย (default value)
  • C: จัดกึ่งกลาง
  • R: ชิดขวา

fill : (true/false) แรเงากล่องข้อความหรือไม่หรือไม่ สำหรับสีที่จะใช้ในการแรเงานั้นกำหนดได้ด้วยคำสั่ง SetFillColor ซึ่งจะอธิบายในบทต่อๆ ไป

    ค่าที่เป็นไปได้

  • false : ไม่แรเงา (default)
  • true : แรเงา