Tuesday, 31 October 2017

Create/Convert HTML To PDF In Codeigniter Using MPDF

Assalamualaikum dan Salam Sejahtera,

Hi guys, arini saya nak share langkah-langkah bagaimana nak create/convert HTML ke PDF didalam codeigniter menggunakan MPDF.

1. Langkah 1, muat turun Class Mpdf dan methods di sini  atau  https://www.mediafire.com/?9qmqaw2yglo5caa
- Sekarang extract zip file yang telah dimuat turun dan masukkan folder mpdf   ke dalam application >> third_party folder (folder ini memang sedia ada dalam Application folder didalam aplikasi codeigniter )

2. Langkah ke 2, wujudkan Ci library untuk memanggil / komunikasi methods mpdf dan classes daripada ci controller anda.
- Sekarang pergi ke folder libraries  didalam folder application dan cipta nama file : M_pdf.php seperti contoh kod dibawah.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
class m_pdf {
    
    function m_pdf()
    {
        $CI = & get_instance();
        log_message('Debug', 'mPDF class is loaded.');
    }
 
    function load($param=NULL)
    {
        include_once APPPATH.'/third_party/mpdf/mpdf.php';
         
        if ($params == NULL)
        {
            $param = '"en-GB-x","A4","","",10,10,10,10,6,3';            
        }
         
        //return new mPDF($param);
        return new mPDF();
    }
}

3. Langkah ke 3, didalam mana-mana controller yang anda ingin guna pakai atau convert dari view ke output pdf. Anda boleh lihat panggilan library yang dicipta dengan load library menggunakan  this->load_library dan pass data yang di perlukan di antaramuka view atau dapatkan data daripada model dan terus pass kepada view pdf anda dan use/render data tersebut dalam view seperti view dan controller yang normal.

Untuk contoh, dibawah adalah contoh coding method yang diberi nama save_download.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
 public function save_download()
  { 
  //load mPDF library
  $this->load->library('m_pdf');
  //load mPDF library


  //now pass the data//
   $this->data['title']="MY PDF TITLE 1.";
   $this->data['description']="";
   $this->data['description']=$this->official_copies;
   //now pass the data //

  
  $html=$this->load->view('pdf_output',$this->data, true); //load the pdf_output.php by passing our data and get all data in $html varriable.
   
  //this the the PDF filename that user will get to download
  $pdfFilePath ="mypdfName-".time()."-download.pdf";

  
  //actually, you can pass mPDF parameter on this load() function
  $pdf = $this->m_pdf->load();
  //generate the PDF!
  $pdf->WriteHTML($html,2);
  //offer it to user via browser download! (The PDF won't be saved on your server HDD)
  $pdf->Output($pdfFilePath, "D");
   
    
  }

Di harap penerangan ini sedikit sebanyak dapat membantu anda semua dalam mencipta atau menukar HTML file ke PDF file.

Sekian Terima Kasih.

----------------------------------------------------------
Disediakan Oleh : Zainimar Binti Zulkifli
Sumber :1. https://www.w3school.info/2016/02/08/convert-html-to-pdf-in-codeigniter-using-mpdf/

0 comments:

Post a Comment