Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHP untuk menjana dokumen PDF secara dinamik

Cara menggunakan PHP untuk menjana dokumen PDF secara dinamik

PHPz
PHPzasal
2023-09-05 12:04:441188semak imbas

如何使用 PHP 实现动态生成 PDF 文档

Cara menggunakan PHP untuk menjana dokumen PDF secara dinamik

PDF ialah format dokumen yang biasa digunakan, digunakan secara meluas dalam e-buku, laporan, kontrak Tunggu tempat kejadian. Dalam pembangunan tapak web, kadangkala kita mungkin perlu menjana dokumen PDF secara dinamik untuk operasi seperti menjana laporan dan mengeksport data. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menjana dokumen PDF secara dinamik dan menyediakan contoh kod untuk rujukan.

1. Pasang perpustakaan bergantung

Sebelum bermula, kita perlu memasang TCPDFFPDF dua perpustakaan generasi PDF yang biasa digunakan ini. Kedua-dua perpustakaan menyediakan fungsi dan kaedah yang kaya untuk menjana dokumen PDF dengan mudah. Ia boleh dipasang melalui Komposer, seperti yang ditunjukkan di bawah:

composer require tecnickcom/tcpdf

atau

composer require setasign/fpdf

2. Gunakan TCPDF untuk menjana dokumen PDF

TCPDF adalah alat yang berkuasa Pustaka penjanaan PDF sumber terbuka yang boleh menjana dokumen PDF yang kompleks. Berikut ialah contoh kod yang menggunakan TCPDF untuk menjana dokumen PDF:

require_once('path/to/tcpdf/tcpdf.php');

// 创建 PDF 对象
$pdf = new TCPDF();

// 设置文档属性
$pdf->SetCreator('Your Name');
$pdf->SetAuthor('Your Name');
$pdf->SetTitle('My PDF Document');

// 添加一个页面
$pdf->AddPage();

// 设置字体和样式
$pdf->SetFont('helvetica', '', 12);

// 输出文本内容
$pdf->Cell(0, 10, 'Hello, World!', 0, 1, 'C');

// 输出图像
$pdf->Image('path/to/image.jpg', 10, 20, 50, 0, 'JPG');

// 输出链接
$pdf->WriteHTML('<a href="http://example.com">Example</a>', true, false, true, false, '');

// 输出 PDF 文档
$pdf->Output('output.pdf', 'D');

Dalam kod di atas, kami mula-mula memperkenalkan kelas TCPDF dan kemudian mencipta objek PDF. Seterusnya, kita boleh menetapkan beberapa sifat dokumen, seperti pencipta, pengarang, tajuk, dsb. Selepas menambah halaman, kita boleh menetapkan fon dan gaya, teks output, imej, pautan dan kandungan lain. Dalam baris terakhir kod, kami mengeluarkan dokumen PDF ke penyemak imbas dan muncul tetingkap muat turun.

3 Gunakan FPDF untuk menjana dokumen PDF

FPDF ialah satu lagi perpustakaan penjanaan PDF PHP yang biasa digunakan Berbanding dengan TCPDF, fungsinya lebih ringkas, tetapi ia mudah diperolehi dimulakan dan digunakan. Berikut ialah contoh kod yang menggunakan FPDF untuk menjana dokumen PDF:

require_once('path/to/fpdf/fpdf.php');

// 创建 PDF 对象
$pdf = new FPDF();

// 添加一个页面
$pdf->AddPage();

// 设置字体和样式
$pdf->SetFont('Arial', 'B', 16);

// 输出文本内容
$pdf->Cell(40, 10, 'Hello, World!');

// 输出图像
$pdf->Image('path/to/image.jpg', 10, 20, 30, 0, 'JPG');

// 输出链接
$pdf->Write(10, 'For more information, visit ');
$pdf->SetFont('Arial', 'U', 16);
$pdf->Write(10, 'www.example.com', 'http://example.com');

// 输出 PDF 文档
$pdf->Output();

Dalam contoh di atas, kami mula-mula memperkenalkan kelas FPDF dan kemudian mencipta objek PDF. Selepas menambah halaman, kami menetapkan fon dan gaya serta kandungan output seperti teks, imej dan pautan. Dalam baris terakhir kod, kami mengeluarkan dokumen PDF ke penyemak imbas.

Ringkasan:

Menggunakan PHP untuk menjana dokumen PDF secara dinamik boleh dicapai melalui dua perpustakaan TCPDF atau FPDF. TCPDF menyediakan lebih banyak fungsi dan kaedah, sesuai untuk menjana dokumen PDF yang kompleks manakala FPDF lebih ringkas dan mudah digunakan, sesuai untuk beberapa tugas penjanaan PDF yang mudah. Dengan memilih perpustakaan yang sesuai untuk pembangunan berdasarkan keperluan khusus, anda boleh dengan mudah merealisasikan fungsi menjana dokumen PDF secara dinamik.

Atas ialah kandungan terperinci Cara menggunakan PHP untuk menjana dokumen PDF secara dinamik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn