آموزش ساخت Pdf با Php5

parsmizban

Member
سلام به همگی دوستان
خیلی ها می خواستن بدونن چجوری میشه با PHP صفحات PDF رو ساخت من هم آموزش شو گذاشتم .

نکته !
این آموزش مربوط به PHP5 هست.


PDFlib یک extension برای PHP هست مانند GD

ابتدا باید مطمئن بشین کتابخانه PDFlib رو سرور نصب هست برای این کار روی localhost کار های زیر را انجام دهید :

1- از وجود php_pdf.dll در extension های PHP مطمئن شوید
Php.ini -2 را باز کرده و ";" را از مقابل خط extension=php_pdf.dll بردارید


حالا PDF رو می سازیم
ابتدا یک PDF تعریف می کنیم

PHP:
try {
// create new instance of the 'PDFlib' class
$pdf=new PDFlib();
// open new PDF file
if(!$pdf->begin_document("","")){
throw new PDFlibException("Error creating PDF document. ".$pdf->get_errmsg());
}
حالا یک پوشه PDF تعریف کرده ایم
سپس اطلاعات لازم را به فایل می دهیم
در این مرحله نام فایل را برای آن تعیین می کنیم

PHP:
$pdf->set_info("Creator","pdf_example.php");

در این مرحله نام مولف فایل یا Author را تعریف می کنیم

PHP:
$pdf->set_info("Author","Alejandro Gervasio");

در این مرحله عنوان یا title را یرای PDF تعریف می کنیم

PHP:
$pdf->set_info("Title","Example on using PHP to create PDF docs");


در این قسمت یک صفحه را شروع می کنیم و اندازه آن را تعریف می کنیم

PHP:
$pdf->begin_page_ext(595,842,"");
این اندازه مخصوص A4 هست

PHP:
  $pdf->begin_page_ext(421,595,"");
این اندازه مخصوص A5 هست

سپس فونت ها را فراخوانی می کنیم

PHP:
$font=$pdf->load_font("Helvetica-Bold","winansi","");

و در مرحله بعد فونت و سایز آن را ست می کنیم

PHP:
$pdf->setfont($font,24.0);

حالا موقعیت آن را در نوشته تعیین می کنیم

PHP:
$pdf->set_text_pos(50,800);

نوشته مورد نظر را تعریف می کنیم

PHP:
$pdf->show("PHP is great for creating PDF documents!");

سپس صفحه را می بندیم

PHP:
$pdf->end_page_ext("");

نکته !
صفحه را با
PHP:
$pdf->begin_page_ext(595,842,"");
و با
PHP:
$pdf->end_page_ext("");
به پایان می بریم

سپس پوشه PDF را می بندیم

PHP:
$pdf->end_document("");

حال خروجی را برای PHP تعریف می کنیم
PHP:
$buffer=$pdf->get_buffer();
  $len=strlen($buffer);
  header("Content-type: application/pdf");
   header("Content-Length: $len");
   header("Content-Disposition: inline; filename=example.pdf");
 echo $buffer;
}
  catch (PDFlibException $e){
   echo 'Error Number:'.$e->get_errnum()."n";
   echo 'Error Message:'.$e->get_errmsg();
   exit();

اسکریپت به صورت کلی
PHP:
<?php
try {

// create new instance of the 'PDFlib' class

$pdf=new PDFlib();

// open new PDF file

if(!$pdf->begin_document("","")){

throw new PDFlibException("Error creating PDF document. ".$pdf->get_errmsg());

}

  $pdf->set_info("Creator","pdf_example.php");

  $pdf->set_info("Author","Alejandro Gervasio");

$pdf->set_info("Title","Example on using PHP to create PDF
docs");


  $pdf->begin_page_ext(595,842,"");

 

  $font=$pdf->load_font("Helvetica-Bold","winansi","");


  $pdf->setfont($font,24.0);

  $pdf->set_text_pos(50,800);

  $pdf->show("PHP is great for creating PDF documents!");

// end page

  $pdf->end_page_ext("");

 

// end document

  $pdf->end_document("");


// get buffer contents

  $buffer=$pdf->get_buffer();

// get length of buffer

  $len=strlen($buffer);

// display PDF document

  header("Content-type: application/pdf");

   header("Content-Length: $len");

   header("Content-Disposition: inline; filename=example.pdf");

 echo $buffer;

}

  catch (PDFlibException $e){

   echo 'Error Number:'.$e->get_errnum()."n";

   echo 'Error Message:'.$e->get_errmsg();

   exit();

}
?>
فایل PDF در خدمت شماست
پایان قسمت اول
 
آخرین ویرایش:

bahy_my

Active Member
ممنون از راهنمایی.
اینم کدیه که قبلن هم استفاده می کردم. تست که می کنم cannot find server !!!!! میده.
نمی دونم مشکل چیه.
همه چیز هم نصبه و قابلیت pdf غیر ممکنه نیست روی سیستم من... چون توی cms ها مشکلی نیست !
.... ؟
 

bahy_my

Active Member
همه ی حرفامو فراموش کنید حالا منظورم اینه cannot find میده.
چی کنم ؟
ممنون میشم راهنماییم کنید.
 

mahdisalamat

New Member
سلام
من رو هاست این فایل آخرو اپلود کردم ولی هیچی نمیاره
میشه راهنماییم کنید
 

جدیدترین ارسال ها

بالا