แน่นอนเลยว่าในชีวิตจริง การออกรายงานหรือการปริ้นต์เอกสาร ไม่ได้จำกัดอยู่แค่ A4 แต่ยังมี กระดาษซองจดหมาย,A5 หรือกระดาษที่มีขนาดไม่ค่อยจะเหมือนชาวบ้าน เช่น จำพวกกระดาษต่อเนื่อง เป็นต้น นี่ยังไม่นับรวมเอา กระดาษแนวตั้ง กับแนวนอน เข้าไปด้วย
FPDF นั้นอนุญาติให้เรากำหนดใช้กระดาษขนาดไหนก็ได้ แนวตั้ง แนวนอนก็ได้เช่นกัน โดยผ่าน construct
FPDF([string orientation [, string unit [, mixed format]]])
คำอธิบาย
construct FPDF ถ้าเราไม่กำหนดพารามิเตอร์ใดๆเลย จะมีความหมายว่า ใช้กระดาษขนาด A4 แนวตั้ง หน่วยวัดเป็น มิลลิเมตร (ถ้าท่านใช้ไม้บรรทัดวัดกระดาษ โปรดจำไว้ว่า 1 เซนติเมตร=10 มิลลิเมตร)
พารามิเตอร์
orientation : กำหนดกระดาษแนวตั้งหรือแนวนอน
- ค่าที่เป็นไปได้คือ
- P – แนวตั้ง (default)
- L – แนวนอน
unit : หน่วยวัด ใช้เป็นหน่วยในการกำหนดพิกัดพิมพ์ข้อความลงบน pdf
- ค่าที่เป็นไปได้คือ
- pt – point 1pt เท่ากับ 1/72 นิ้ว, หรือประมาณ 0.35 มม.
- mm – มิลลิเมตร (default)
- cm – เซนติเมตร
- in – นิ้ว
format : ขนาดกระดาษ
- ค่าที่เป็นไปได้คือ
- A3
- A4 (default)
- A5
- Letter
- array(width,height) – กำหนดเอง โดยส่งอะเรย์ กว้างxสูง หน่วยตามกำหนดใน unit
ตัวอย่าง กำหนดกระดาษขนาด กว้าง 100 มม.x100 มม.
$pdf=new FPDF( 'P' , 'mm' , array( 100,100 ) ); |
ตัวอย่าง กำหนดกระดาษขนาด A4 แนวนอน
$pdf=new FPDF( 'L' , 'mm' , 'A4' ); |
ตัวอย่างการใช้งาน
ให้ท่านสร้างไฟล์ fpdf-lesson-3.php
1. include ไฟล์ fpdf.php เข้ามา
require('fpdf.php'); |
2. สร้าง instant FPDF พร้อมกำหนดขนาดกระดาษ กว้าง 100มม. สูง 200มม.
$pdf=new FPDF( 'P' , 'mm' , array( 100,200 ) ); |
3. เพิ่มหน้ากระดาษ
$pdf->AddPage(); |
4. กำหนดฟ้อนต์ที่จะใช้ ซึ่ง ณ ตอนนี้จะใช้ได้เฉพาะฟอนต์ Arial เท่านั้น
$pdf->SetFont('Arial','B',16); //กำหนดฟอนต์ Arial ตัวหนา ขนาด 16 //จะอธิบายคำสั่งนี้อย่างละเอียด ในบทว่าด้วยเรื่อง กำหนดฟ้อนต์ |
5. พิมพ์ข้อความลงไปในเอกสาร
$pdf->Text( 10 , 10 , 'Hello World!'); //พิมพ์คำว่า Hello World! ลงไปในตำแหน่ง //เยื้องจากขอบกระดาษด้านซ้าย 10 มม. //เยื้องจากขอบกระดาษด้านบน 10 มม. |
6. Output
$pdf->Output(); |
โค้ดทั้งหมด :
<?php require('fpdf.php'); $pdf=new FPDF( 'P' , 'mm' , array( 100,200 ) ); $pdf->AddPage(); $pdf->SetFont('Arial','B',16); $pdf->Text( 10 , 10 , 'Hello World!'); $pdf->Output(); ?> |
LuxJung says:
21/08/2556 at 21/08/2556
สอบถามหน่อยครับ
$pdf=new FPDF( ‘P’ , ‘mm’ , array( 100,200 ) );
ถ้าโค้ดนี้ ตรงเลข 200 เป็นความยาว แล้วถ้าผมจะต้องการให้ความยาวเป็น auto ผมต้องกำหนดอย่างไรครับ
ขอบคุณครับ
ปลาทู says:
22/08/2556 at 22/08/2556
เป็นไปไม่ได้เลยครับผม ในความเป็นจริง เพราะกระดาษที่ขายๆกัน มีความยาวจำกัด
onekisz says:
14/10/2556 at 14/10/2556
ผมคิดว่าเป็นไปได้นะ อย่างพวกบิลกระดาษ roll ที่เรารู้แค่ความกว้างแต่ไม่รู้ความยาว แบบนั้นเราจะเซตยังไงครับ
ปลาทู says:
14/10/2556 at 14/10/2556
ถึงเป็นกระดาษม้วนก็เถอะครับ มันมีแบ่งเป้นหน้าๆ ในจินตนาการอยู่ ลองสังเกตดูสิ ว่ามันไม่ได้ฟีดจนหมดม้วน
wiani says:
14/01/2558 at 14/01/2558
Call to undefined function get_magic_quotes_runtime() in C:\AppServ\www\fpdf\fpdf.php on line 1054 แก้ยังไงครับ