PHP

Mengubah HTML ke PDF dengan PHP (composer)

0

Ketika Anda ingin menyimpan halaman web dalam bentuk file yang dapat diakses secara offline atau berbagi dokumen dengan orang lain, format PDF seringkali menjadi pilihan yang populer. PDF (Portable Document Format) adalah format dokumen yang dapat dengan mudah dibuka di berbagai perangkat tanpa perubahan format. Dalam artikel ini, kita akan membahas cara mengubah halaman HTML menjadi file PDF menggunakan PHP.

Sebelum kita mulai mengubah halaman HTML menjadi PDF, mari kita pahami apa yang diperlukan untuk tugas ini. Proses pembuatan PDF dari halaman web melibatkan langkah-langkah berikut:

  1. Membuat halaman HTML yang ingin Anda ubah menjadi PDF.
  2. Menggunakan library PHP yang sesuai untuk mengonversi dan menghasilkan file PDF dari halaman HTML tersebut.

Terdapat beberapa library PHP yang dapat membantu kita dalam melakukan tugas ini, seperti Dompdf, mPDF, FPDF, dan TCPDF. Dalam artikel ini, kita akan menggunakan library Dompdf dan mPDF sebagai contoh untuk mengonversi HTML menjadi PDF.

Menggunakan Dompdf untuk Mengubah HTML ke PDF

Langkah pertama adalah mempersiapkan halaman HTML yang ingin kita ubah menjadi PDF. Misalkan kita memiliki halaman HTML sederhana sebagai contoh:

<!DOCTYPE html>
<html>
<head>
    <title>Contoh Halaman Web</title>
</head>
<body>
    <h1>Selamat datang di halaman web kami!</h1>
    <p>Ini adalah contoh halaman web yang ingin diubah menjadi PDF.</p>
</body>
</html>

Selanjutnya, kita perlu mengunduh dan menginstal library Dompdf. Anda dapat mengunduhnya dari situs resmi Dompdf atau menggunakan manajer paket seperti Composer untuk menginstalnya.

composer require dompdf/dompdf

Setelah library Dompdf diinstal, kita bisa membuat script PHP untuk mengubah halaman HTML menjadi PDF.

<?php
require_once 'vendor/autoload.php';

use Dompdf\Dompdf;

$dompdf = new Dompdf();
$html = file_get_contents('contoh_halaman.html');
$dompdf->loadHtml($html);

// (Optional) Atur opsi PDF
$dompdf->setPaper('A4', 'portrait');

// Render HTML menjadi PDF
$dompdf->render();

// Simpan atau tampilkan PDF
$dompdf->stream('contoh_halaman.pdf', ['Attachment' => false]);

Penjelasan:

  • Pertama, kita memuat library Dompdf menggunakan require_once dan membuat objek baru dari kelas Dompdf.
  • Selanjutnya, kita membaca isi halaman HTML yang ingin diubah menjadi PDF menggunakan file_get_contents() dan mengaturnya sebagai HTML yang akan diolah oleh Dompdf menggunakan loadHtml().
  • Kemudian, kita dapat mengatur opsi PDF, seperti ukuran kertas dan orientasi, dengan menggunakan setPaper(). Dalam contoh ini, kita menggunakan ukuran kertas A4 dalam orientasi potret.
  • Selanjutnya, kita merender HTML menjadi PDF dengan menggunakan render().
  • Akhirnya, kita menyimpan atau menampilkan file PDF yang dihasilkan. Dalam contoh ini, kita menampilkan file PDF ke browser dengan menggunakan stream(). Jika Anda ingin menyimpan PDF sebagai file, Anda dapat menggunakan output() atau outputHtml() untuk menyimpannya sebagai HTML.
Baca Juga :
Membuat Captcha dengan PHP GD

Menggunakan mPDF untuk Mengubah HTML ke PDF

Selain Dompdf, kita juga dapat menggunakan library mPDF untuk mengonversi HTML menjadi PDF. Seperti sebelumnya, langkah pertama adalah mempersiapkan halaman HTML yang ingin diubah menjadi PDF.

<!DOCTYPE html>
<html>
<head>
    <title>Contoh Halaman Web</title>
</head>
<body>
    <h1>Selamat datang di halaman web kami!</h1>
    <p>Ini adalah contoh halaman web yang ingin diubah menjadi PDF.</p>
</body>
</html>

Kemudian, kita perlu mengunduh dan menginstal library mPDF. Anda dapat mengunduhnya dari situs resmi mPDF atau menggunakan Composer untuk menginstalnya.

composer require mpdf/mpdf

Setelah library mPDF diinstal, kita bisa membuat script PHP untuk mengonversi halaman HTML menjadi PDF.

<?php
require_once 'vendor/autoload.php';

use Mpdf\Mpdf;

$mpdf = new Mpdf();
$html = file_get_contents('contoh_halaman.html');

// Atur opsi PDF (opsional)
$mpdf->SetDisplayMode('fullpage');
$mpdf->SetHeader('Contoh Halaman Web|Left|{PAGENO}');
$mpdf->SetFooter('{DATE j-m-Y}|Right|Halaman {PAGENO}');
$mpdf->AddPage('P');
$mpdf->WriteHTML($html);

// Simpan atau tampilkan PDF
$mpdf->Output('contoh_halaman.pdf', 'D');

Penjelasan:

  • Pertama, kita memuat library mPDF menggunakan require_once dan membuat objek baru dari kelas Mpdf.
  • Selanjutnya, kita membaca isi halaman HTML yang ingin diubah menjadi PDF menggunakan file_get_contents() dan menambahkannya ke objek mPDF menggunakan WriteHTML().
  • Kemudian, kita dapat mengatur opsi PDF, seperti mode tampilan, header, dan footer menggunakan metode-metode seperti SetDisplayMode(), SetHeader(), SetFooter(), dan AddPage().
  • Selanjutnya, kita menggunakan Output() untuk menyimpan atau menampilkan file PDF yang dihasilkan. Dalam contoh ini, kita menyimpan file PDF dengan nama “contoh_halaman.pdf” dan mengatur opsi “D” yang berarti file akan diunduh oleh browser.

Kesimpulan

Dalam artikel ini, kita telah membahas cara mengubah halaman HTML menjadi file PDF menggunakan PHP. Kita menggunakan library Dompdf dan mPDF sebagai contoh dalam proses konversi ini. Dengan menggunakan salah satu library ini, Anda dapat dengan mudah menghasilkan file PDF dari halaman web Anda dan menyimpannya atau berbagi dengan orang lain. Selamat mencoba!

Baca Juga :
Membaca File TXT Perbaris dengan PHP
rajakode

Mengubah New Line menjadi Comma dengan JavaScript

Previous article

Mengubah HTML ke PDF dengan Dompdf pada PHP Native Tanpa Composer

Next article

You may also like

More in PHP