TCPDF
Pustaka PHP untuk Penciptaan & Penyuntingan Dokumen PDF
API PHP Sumber Terbuka untuk Menjana dokumen PDF, subletting fon, JPEG atau PNG dan imej SVG Sokongan asli, sokongan Kod Bar 1D dan 2D.
TCPDF ialah perpustakaan PHP sumber terbuka yang memberikan pembangun perisian keupayaan untuk menjana dokumen PDF menggunakan arahan PHP tanpa sebarang kebergantungan luaran. Perkara yang menarik tentang TCPDF ialah ia dianggap sebagai satu-satunya perpustakaan berasaskan PHP yang merangkumi sokongan lengkap untuk UTF-8 Unicode dan bahasa kanan ke kiri.
Perpustakaan menyokong beberapa ciri penting seperti mencipta dokumen PDF, penyewaan fon, imej & sokongan grafik, sokongan asli untuk imej JPEG, PNG dan SVG, sokongan kod bar 1D dan 2D, mengurus pengepala dan pengaki halaman PDF, sokongan penyulitan dan penyahsulitan, PDF anotasi, jadual kandungan, mod pemaparan teks, format halaman tersuai, jidar tersuai, unit halaman dan banyak lagi.
Perpustakaan ini dianggap sebagai salah satu perpustakaan PHP yang paling popular dan paling banyak digunakan di dunia kerana ia telah dimasukkan ke dalam CMS dan aplikasi berasaskan PHP yang paling popular, termasuk Joomla, Drupal, Moodle, phpMyAdmin, dan sebagainya.
Bermula dengan TCPDF
TCPDF tersedia di packagist.org, jadi anda boleh menggunakan komposer untuk memuat turun pustaka ini dan semua kebergantungan. Sila gunakan arahan berikut untuk pemasangan yang lancar.
Pasang Perintah TCPDF
Install Package TCPDF
Hasilkan Dokumen PDF menggunakan Perpustakaan PHP
Pustaka PHP percuma TCPDF telah menyertakan fungsi yang membolehkan pengaturcara perisian membuat dokumen PDF secara pengaturcaraan di dalam aplikasi PHP mereka sendiri. Anda boleh menggunakan pengekodan utf-8 serta sokongan untuk bahasa Kanan-Ke-Kiri. Beberapa ciri penting seperti memilih jenis dan saiz fon, jidar tersuai, unit ukuran, menambah kod bar, menambah jadual, memasukkan halaman, mengalihkan halaman, memadam halaman dan banyak lagi.
Cipta Dokumen PDF melalui PHP
// Include the main TCPDF library (search for installation path).
require_once('tcpdf_include.php');
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// set document information
$pdf->setCreator(PDF_CREATOR);
$pdf->setAuthor('Nicola Asuni');
$pdf->setTitle('TCPDF Example 038');
$pdf->setSubject('TCPDF Tutorial');
$pdf->setKeywords('TCPDF, PDF, example, test, guide');
Kod Bar Menyokong dalam Fail PDF melalui PHP
Pustaka PHP sumber terbuka menyediakan fungsi untuk memasukkan Kod Bar di dalam dokumen PDF menggunakan beberapa baris kod PHP. Pembangun boleh menggunakan pelbagai jenis Kod Bar 1D (CODE 39, CODE 128 AUTO, EAN 8, UPC-E, MSI, CODABAR, CODE 11, RMS4CC) dan Kod Bar 2D (QR-Code, Datamatrix ECC200 dan PDF417) dengan mudah. Ia juga menyediakan sokongan untuk ciri seperti menetapkan ketinggian Kod Bar, penjajaran Kod Bar, tetapkan jidar, gunakan jumlah semak & banyak lagi.
Cipta Dokumen PDF melalui PHP
$pdf->SetFont('helvetica', '', 10);
// define barcode style
$style = array(
'position' => '',
'align' => 'C',
'stretch' => false,
'fitwidth' => true,
'cellfitalign' => '',
'border' => true,
'hpadding' => 'auto',
'vpadding' => 'auto',
'fgcolor' => array(0,0,0),
'bgcolor' => false, //array(255,255,255),
'text' => true,
'font' => 'helvetica',
'fontsize' => 8,
'stretchtext' => 4
);
// PRINT VARIOUS 1D BARCODES
// CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9.
$pdf->Cell(0, 0, 'CODE 39 - ANSI MH10.8M-1983 - USD-3 - 3 of 9', 0, 1);
$pdf->write1DBarcode('CODE 39', 'C39', '', '', '', 18, 0.4, $style, 'N');
$pdf->Ln();
// CODE 39 + CHECKSUM
$pdf->Cell(0, 0, 'CODE 39 + CHECKSUM', 0, 1);
$pdf->write1DBarcode('CODE 39 +', 'C39+', '', '', '', 18, 0.4, $style, 'N');
$pdf->Ln();
// CODE 39 EXTENDED
$pdf->Cell(0, 0, 'CODE 39 EXTENDED', 0, 1);
$pdf->write1DBarcode('CODE 39 E', 'C39E', '', '', '', 18, 0.4, $style, 'N');
$pdf->Ln();
Tambah Pengepala/Pengaki Tersuai dalam PDF
Pengepala dan pengaki adalah bahagian yang sangat berguna dalam dokumen PDF yang membantu pengguna menyusun fail PDF mereka serta lebih mudah dibaca. Pustaka sumber terbuka TCPDF memudahkan kerja pembangun dengan memasukkan fungsi untuk menambahkan pengepala & pengaki tersuai pada dokumen PDF dengan hanya beberapa baris kod PP. Ia menyokong ciri seperti menetapkan fon untuk pengepala dan pengaki, menetapkan margin, pemisah halaman automatik, menambah imej di dalam pengepala/pengaki, menambah nombor halaman dan sebagainya.
Tetapkan Pengepala/Pengaki Tersuai dalam PDF melalui PHP
// Extend the TCPDF class to create custom Header and Footer
class MYPDF extends TCPDF {
//Page header
public function Header() {
// Logo
$image_file = K_PATH_IMAGES.'logo_example.jpg';
$this->Image($image_file, 10, 10, 15, '', 'JPG', '', 'T', false, 300, '', false, false, 0, false, false, false);
// Set font
$this->SetFont('helvetica', 'B', 20);
// Title
$this->Cell(0, 15, '<< TCPDF Example 003 >>', 0, false, 'C', 0, '', 0, false, 'M', 'M');
}
// Page footer
public function Footer() {
// Position at 15 mm from bottom
$this->SetY(-15);
// Set font
$this->SetFont('helvetica', 'I', 8);
// Page number
$this->Cell(0, 10, 'Page '.$this->getAliasNumPage().'/'.$this->getAliasNbPages(), 0, false, 'C', 0, '', 0, false, 'T', 'M');
}
}
Buat Jadual Kandungan
Pustaka PHP sumber terbuka TCPDF menyediakan fungsi untuk mencipta jadual kandungan di dalam aplikasi mereka. Penggunaan Jadual Kandungan membantu pembaca memahami struktur dokumen dan boleh mencari maklumat yang mereka cari dengan cepat. Untuk membuat Jadual kandungan anda perlu menambah halaman baharu untuk TOC dan boleh menulis tajuk TOC dan/atau elemen lain pada halaman TOC. Anda juga boleh menentukan gaya untuk pelbagai peringkat penanda halaman untuk pelbagai elemen HTML dengan mudah.
Cara Menambah TOC dalam PDF melalui PHP
// add a new page for TOC
$pdf->addTOCPage();
// write the TOC title
$pdf->SetFont('times', 'B', 16);
$pdf->MultiCell(0, 0, 'Table Of Content', 0, 'C', 0, 1, '', '', true, 0);
$pdf->Ln();
$pdf->SetFont('dejavusans', '', 12);
// add a simple Table Of Content at first page
// (check the example n. 59 for the HTML version)
$pdf->addTOC(1, 'courier', '.', 'INDEX', 'B', array(128,0,0));
// end of TOC page
$pdf->endTOCPage();
// ---------------------------------------------------------
//Close and output PDF document
$pdf->Output('example.pdf', 'I');
Urus Anotasi PDF melalui Perpustakaan PHP
Anotasi ialah set lengkap objek yang boleh ditambah pada halaman PDF tanpa mengubah kandungan halaman. Ia seterusnya membantu dalam penjelasan kepada kandungannya atau untuk mengembangkan apa yang sudah ada. Pustaka PHP sumber terbuka TCPDF menyediakan sokongan untuk pelbagai penciptaan anotasi seperti anotasi teks, anotasi pautan, teks penandaan, anotasi setem dan sebagainya.
Tambah Teks Anotasi PDF melalui PHP
// set font
$pdf->SetFont('times', '', 16);
// add a page
$pdf->AddPage();
$txt = 'Example of Text Annotation.
Move your mouse over the yellow box or double click on it to display the annotation text.';
$pdf->Write(0, $txt, '', 0, 'L', true, 0, false, false, 0);
// text annotation
$pdf->Annotation(83, 27, 10, 10, "Text annotation example\naccented letters test: àèéìòù", array('Subtype'=>'Text', 'Name' => 'Comment', 'T' => 'title example', 'Subj' => 'example', 'C' => array(255, 255, 0)));
// ---------------------------------------------------------
//Close and output PDF document
$pdf->Output('example.pdf', 'I');