PDF

Mengubah HTML menjadi PDF di Codeigniter Framework Menggunakan Library Html2pdf

Sebelum memulai download dahulu library Html2pdf disini lalu extract folder dan pindahkan ke dalam folder application\\libraries 

 

Kemudian buat satu file baru dengan nama html2pdf_lib.php di folder application\\libraries  dan copy syntax dibawah ini dan sesuaikan require_once dengan nama folder library yang tadi di extract.

<?php defined('BASEPATH') OR exit('No direct script access allowed');

\t// Html2Pdf namespace
\tuse Spipu\\Html2Pdf\\Html2Pdf;
\tuse Spipu\\Html2Pdf\\Exception\\Html2PdfException;
\tuse Spipu\\Html2Pdf\\Exception\\ExceptionFormatter;

\tclass Html2pdf_lib
\t{
\t    public function __construct(){ 
\t        // require_once autoloader
\t        require_once dirname(__FILE__).'/html2pdf_5.2.2.0/vendor/autoload.php';
\t        $pdf = new Html2Pdf('P', 'A4', 'fr');
\t        $CI =& get_instance();
\t        $CI->html2pdf = $pdf;
\t    }
\t}
?>

 

Selanjutnya buat satu file baru dengan new_helper.php di folder application\\helpers dan copy syntax dibawah ini :

<?php defined('BASEPATH') OR exit('No direct script access allowed');
  // generate htmlPDF
  function html_generate($name_file, $file_html, $data)
  {
      $ci = &get_instance();
      $data['data'] = $data;
      $ci->load->view($file_html, $data);
      // Get output html
      $html = $ci->output->get_output();
      // Load pdf library
      $ci->load->library('html2pdf_lib');
      ob_start();
      $content = $html;
      ob_clean();
      $ci->html2pdf->setDefaultFont('Arial');
      $ci->html2pdf->pdf->SetDisplayMode('fullpage');
      $ci->html2pdf->writeHTML($content);
      $ci->html2pdf->Output($name_file);
  }
?>

 

Dan Terakhir buat satu file controller dengan nama Export_pdf.php dan copy syntax dibawah ini :

<?php defined('BASEPATH') OR exit('No direct script access allowed');
\tclass Export_pdf extends CI_Controller {
\t\tfunction __construct() {
\t\t\tparent::__construct();
\t\t\t$this->load->helper(array('url', 'html', 'new'));
\t\t}

\t\t function get_pdf_test(){
\t\t    $data = array(
\t\t        'title' => 'Add PDF | ERP',
\t\t        'remarks' => 'Pdf Sample'
\t\t    );
\t    \thtml_generate("welcome.pdf", "welcome_message", $data);
\t  \t}
\t}
?>

 

Sampai disini proses mengubah html menjadi pdf sudah selesai dan hasil akhir akan menampilkan halaman welcome_message.php dalam bentuk pdf. Untuk selanjutnya silahkan di modifikasi sendiri sesuai dengan kebutuhan.

Selamat mencoba, terima kasih.

Menggunakan Library Html2pdf

Html2pdf adalah library PHP yang mengkonversi HTML menjadi PDF. Library ini sangat cocok untuk membuat laporan, invoice, atau dokumen lainnya dari template HTML.

Instalasi via Composer

composer require spipu/html2pdf

Implementasi di CodeIgniter

<?php
// Load library
require_once APPPATH . 'third_party/html2pdf/vendor/autoload.php';

// Buat instance
$html2pdf = new \Spipu\Html2Pdf\Html2Pdf('P', 'A4', 'en');

// Set content HTML
$html = '<h1>Laporan Bulanan</h1>';
$html .= '<p>Isi laporan...</p>';
$html .= '<table>...</table>';

$html2pdf->writeHTML($html);
$html2pdf->output('laporan.pdf');
?>

Tips Penggunaan

  • Gunakan CSS inline untuk styling yang konsisten
  • Hindari CSS complex yang tidak didukung
  • Test dengan berbagai ukuran kertas (A4, Letter, dll)
  • Gunakan page break untuk mengontrol layout multi-halaman


0 Comments


Leave a Reply

Comments with links or spam keywords will be rejected.
Scroll to Top