System

Zend Pdf

မင်္ဂလာပါ။ကျွန်တော်ကတော့ မောင်ရဲထက်အောင် ဖြစ်ပါတယ်။
Spiceworks Myanmar company မှာ web developer အဖြစ်ဝင်ရောက်လုပ်ကိုင်နေပါတယ်။ဒီတစ်ပတ်မှာတော့ ကျွန်တေ့ာ်အနေနဲ့Zend Pdf ကို အသုံးပြုတော့မယ်ဆိုရင် သိထားသင့်တဲ့ code တွေကိုလေ့လာထားသလောက်ရှင်းပြမှာဖြစ်ပါတယ်။
ဒီLINKမှာလေ့လာနိုင်ပါတယ်ခင်ဗျ။
https://devzone.zend.com/1064/zend_pdf-tutorial/
ပထမဆုံးအနေနဲ့ pdf တစ်ခုတည်ဆောက်လိုက်ပါမယ်။
new keyword ခံပြီး zend_pdf()ဆိုပြီးရေးပေးရပါမယ်။

    Create a new PDF. 
    require_once 'Zend/Pdf.php';
    $pdf = new Zend_Pdf();

နောက်ပြီးတော့ file လမ်းကြောင်းရွေပြီး file name သတ်မှတ်ပေးရပါမယ်။

   Load PDF document from a file. 
   $fileName = '/path/to/your/file.pdf'; 
   $pdf = new Zend_Pdf($fileName); 

fontရွေးမယ်ဆို setFontဆိုပြီးfont name သတ်မှတ်ပေးရပါမယ်။
fontအမျိုးအစားတွေအများကြီးပါတယ်။ကြိုက်တဲ့fontကို ရွေးချယ်အသုံးပြုနိုင်ပါတယ်။

	
$page->setFont(Zend_Pdf_Font::fontWithName(Zend_Pdf_Font::FONT_HELVETICA), 20); 
  • Zend_Pdf_Font::FONT_COURIER
  • Zend_Pdf_Font::FONT_COURIER_BOLD
  • Zend_Pdf_Font::FONT_COURIER_OBLIQUE (identical to Zend_Pdf_Font::FONT_COURIER_ITALIC)
  • Zend_Pdf_Font::FONT_HELVETICA
  • Zend_Pdf_Font::FONT_HELVETICA_OBLIQUE (identical to Zend_Pdf_Font::FONT_HELVETICA_ITALIC)
  • Zend_Pdf_Font::FONT_HELVETICA_BOLD_OBLIQUE (identical to Zend_Pdf_Font::FONT_HELVETICA_BOLD_ITALIC)
  • Zend_Pdf_Font::FONT_SYMBOL
  • Zend_Pdf_Font::FONT_TIMES_ROMAN
  • Zend_Pdf_Font::FONT_TIMES
  • Zend_Pdf_Font::FONT_TIMES_BOLD
  • Zend_Pdf_Font::FONT_TIMES_ITALIC
  • Zend_Pdf_Font::FONT_ZAPFDINGBATS

documentတွေရေးတော့မယ်ဆိုရင်တော့ drawText keywordကိုသုံးရပါမယ်။

You can write text pdf file as
$page->drawText('Hello world!', 600, 300);

imageတွေထည့်ချင်တယ်ဆိုရင်တော့ imageWithPathဆိုပြီး လမ်းကြောင်းလေးထည့်ပေးပါ။
pageရဲ့WidthတွေHeightတွေသတ်မှတ်ချင်တယ်ဆိုရင်တော့ getHeight(),getWidth()နဲ့ရေးပေးရပါမယ်။

$Image=Zend_Pdf_Image::imageWithPath('D:\xampp\htdocs\zend_pdf\public\img\chomp.jpg');
$pageHeight = $page->getHeight();
$pageWidth = $page->getWidth();
$imageHeight = 72;
$imageWidth = 72;
$topPos = $pageHeight - 16;
$leftPos = 400;
$bottomPos = $topPos - $imageHeight;
$rightPos = $leftPos + $imageWidth;
$page->drawImage($Image, $leftPos, $bottomPos,$rightPos, $topPos);

Document pages size သတ်မှတ်ချင်တယ်ဆိုရင် new Zend_Pdf_Page ခံပြီး Zend_Pdf_Page::SIZE_A4_LANDSCAPE ထည့်ပေးရပါမယ်။

$page = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_LETTER);
$pageHeight = $page->getHeight();
$pageWidth = $page->getWidth();
$pdf->pages[ ] = ($page);
  • Zend_Pdf_Page::SIZE_A4
  • Zend_Pdf_Page::SIZE_LETTER
  • Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE
  • Zend_Pdf_Page::SIZE_A4_LANDSCAPE

document ကို save မယ်ဆိုရင် save keywordကိုအသုံးပြုရပါမယ်။
pdf->save($fileName);

pdf file ကို browserမှာ ပေါ်ချင်တယ်ဆိုရင် render keyword သုံးရပါမယ်။

$pdf->render( );

ကျွန်တော်သိသလောက် နောက်ထပ်လည်း လေ့လာဖြစ်တာလေးတွေ Sharing လုပ်ပေးသွားပါ့မယ် ခင်ဗျ။
ဖတ်ရှုပေးတဲ့အတွက်လည်း အားလုံးကို ကျေးဇူးတင်ပါတယ် ခင်ဗျာ။

Hello

Leave a Reply

Your email address will not be published. Required fields are marked *