Dengan perkembangan zaman maklumat, dokumen PDF telah menjadi bahagian yang sangat diperlukan dalam kerja dan kajian harian. Dengan popularisasi Internet dan Internet mudah alih, dan kemajuan proses elektronik, senario aplikasi dokumen PDF juga berkembang, seperti laporan, sijil, kontrak, dll. Oleh itu, pelaksanaan penjanaan dokumen PDF melalui kod juga telah menjadi keperluan bagi banyak perusahaan dan pembangun individu. Artikel ini akan memperkenalkan cara menggunakan ThinkPHP6 untuk menjana fail PDF saya harap ia akan membantu anda.
1. Pengetahuan latar belakang
Sebelum kita mula memperkenalkan cara menggunakan ThinkPHP6 untuk menjana fail PDF, kita perlu memahami beberapa pengetahuan latar belakang asas:
PDF (Format Dokumen Mudah Alih) ialah format fail elektronik yang dibangunkan oleh Adobe untuk penghantaran dan pencetakan rangkaian. Ia boleh digunakan pada pelbagai sistem pengendalian. Ia boleh menyepadukan dokumen, grafik, gambar, fon dan elemen lain ke dalam satu fail.
ThinkPHP ialah rangka kerja PHP sumber terbuka berdasarkan bahasa PHP dan merupakan salah satu rangka kerja PHP paling popular di China. ThinkPHP mengikuti seni bina MVC dan menyokong banyak operasi pangkalan data, enjin templat, pengesahan kebenaran, caching dan fungsi lain, yang boleh memberikan pembangun pengalaman pembangunan yang mudah, cekap dan selamat.
Secara umumnya, terdapat cara berikut untuk menjana fail PDF:
(1) Tulis fail PDF secara manual
(2) Gunakan perpustakaan pihak ketiga untuk jana fail PDF
(3) Gunakan perkhidmatan awan untuk menjana fail PDF
Antara ketiga-tiga kaedah ini, menggunakan perpustakaan pihak ketiga adalah yang paling biasa digunakan kerana ia mudah digunakan dan berfungsi. Ia mempunyai kelebihan lengkap dan menyokong pelbagai bahasa.
2. Gunakan ThinkPHP6 untuk mencipta kod untuk menjana fail PDF
Sebelum menggunakan ThinkPHP6 untuk menjana fail PDF, kita perlu untuk memasangnya komponen TCPDF pertama. TCPDF ialah perpustakaan kelas PHP sumber terbuka yang digunakan untuk menjana dokumen PDF. Anda boleh memuat turun komponen TCPDF dari tapak web rasmi TCPDF atau Github, dan memasangnya mengikut garis panduan dokumentasi rasmi. Di sini kita boleh memasangnya melalui Komposer.
Masukkan baris arahan berikut dalam tetingkap terminal:
composer require tecnickcom/tcpdf
Tunggu pemasangan selesai, dan komponen TCPDF akan ditambahkan secara automatik pada direktori vendor.
Sebelum menggunakan rangka kerja ThinkPHP6 untuk menjana fail PDF, anda perlu mencipta pengawal penjanaan fail PDF. Dalam direktori fail projek, cipta fail Generatepdf.php sebagai pengawal dalam direktori aplikasi/pengawal melalui arahan berikut:
php think make:controller Generatepdf
Dalam Dalam pengawal yang menjana fail PDF, anda perlu melaksanakan kaedah menjana fail PDF. Di sini, kami mengambil menjana fail PDF mudah sebagai contoh.
Dalam kaedah menjana fail PDF, kita perlu memanggil perpustakaan TCPDF dan menjana fail PDF. Kita perlu melakukan langkah berikut:
(1) Perkenalkan perpustakaan TCPDF
Perkenalkan perpustakaan TCPDF dalam pengawal dan mulakan ia. Anda boleh melihat kod berikut untuk pelaksanaan:
use TCPDF; class Generatepdf extends BaseController { public function index() { // 引入TCPDF库 require_once('../vendor/tecnickcom/tcpdf/tcpdf.php'); // 初始化对象 $pdf = new TCPDF(); } }
(2) Tetapkan parameter fail PDF
Anda boleh menetapkan atribut, saiz halaman, orientasi halaman dan atribut lain fail PDF dalam kaedah menjana fail PDF Anda boleh melihat kod berikut untuk pelaksanaan:
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetCreator('ThinkPHP6'); $pdf->SetAuthor('作者'); $pdf->SetTitle('PDF文档'); $pdf->SetSubject('PDF文档 Demo'); $pdf->SetKeywords('PDF, Demo, TCPDF, PHP'); $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_RIGHT, PDF_MARGIN_TOP); $pdf->SetHeaderMargin(0); $pdf->SetFooterMargin(PDF_MARGIN_BOTTOM); $pdf->setPrintHeader(false); $pdf->setPrintFooter(false); $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); $pdf->SetFont('cid0jp', '', 14); $pdf->AddPage();
(3) Tambah kandungan pada fail PDF
Anda boleh menggunakan kaedah yang disediakan oleh perpustakaan TCPDF untuk menambah elemen seperti imej, teks, jadual, dsb. ke fail PDF Anda boleh melihat kod berikut untuk pelaksanaan:
$pdf->Image('test.png', 10, 10, 150, 100, '', '', '', false, 300, '', false, false, 0, false, false, false); $pdf->SetFont('cid0jp', '', 20); $pdf->Cell(0,20,'Hello,World',0,1,'C'); $pdf->Ln(); $pdf->Ln(); $style = array('border' => 1, 'padding' => '2', 'header_line' => true, 'color' => array(255, 255, 255), 'font' => 'cid0jp', 'font_size' => 10); $pdf->writeHTMlTable($data, $style);
(4) Jana fail PDF
Selepas menyelesaikan operasi menambah elemen pada PDF. fail, anda juga perlu memanggil kaedah Output() untuk mengeluarkan fail PDF atau memuat turun fail pada penyemak imbas.
$pdf->Output('test.pdf', 'D');
3. Ringkasan
Melalui langkah di atas, kita boleh menggunakan rangka kerja ThinkPHP6 untuk menjana dokumen PDF. Semasa proses pembangunan, anda juga perlu memberi perhatian kepada masalah laluan fail PDF, yang boleh diselesaikan dengan menggunakan laluan relatif atau laluan mutlak. Selain itu, perpustakaan TCPDF juga menyediakan banyak fungsi lain yang boleh dipanggil dan dikembangkan mengikut keperluan sebenar. Saya berharap kandungan artikel ini akan membantu pembangun yang menggunakan ThinkPHP6 untuk menjana fail PDF.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan ThinkPHP6 untuk menjana fail PDF?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!