TCPDF
Biblioteca PHP pentru crearea și editarea documentelor PDF
Open Source PHP API pentru a genera documente PDF, subînchiriere de fonturi, imagini JPEG sau PNG și SVG Suport nativ, suport pentru coduri de bare 1D și 2D.
TCPDF este o bibliotecă PHP open source care oferă dezvoltatorilor de software capacitatea de a genera documente PDF folosind comenzi PHP fără dependențe externe. Lucrul grozav despre TCPDF este că este considerat a fi singura bibliotecă bazată pe PHP care include suport complet pentru UTF-8 Unicode și limbi de la dreapta la stânga.
Biblioteca acceptă câteva funcții importante, cum ar fi crearea de documente PDF, subînchirierea fonturilor, suport pentru imagini și grafice, suport nativ pentru imagini JPEG, PNG și SVG, suport pentru coduri de bare 1D și 2D, gestionarea antetului și subsolului paginii PDF, suport pentru criptare și decriptare, PDF adnotări, tabel de conținut, moduri de redare a textului, formate de pagină personalizate, margini personalizate, unități de pagină și multe altele.
Biblioteca este considerată una dintre cele mai populare și mai utilizate biblioteci PHP din lume deoarece a fost inclusă în cele mai populare CMS și aplicații bazate pe PHP, inclusiv Joomla, Drupal, Moodle, phpMyAdmin și așa mai departe.
Noțiuni introductive cu TCPDF
TCPDF este disponibil la packagist.org, așa că puteți folosi composer pentru a descărca această bibliotecă și toate dependențele. Vă rugăm să utilizați următoarea comandă pentru o instalare fără probleme.
Instalați comanda TCPDF
Install Package TCPDF
Generați documente PDF folosind Biblioteca PHP
Biblioteca PHP gratuită TCPDF a inclus funcționalitatea care le permite programatorilor de software să creeze în mod programatic documente PDF în propriile aplicații PHP. Puteți utiliza codificarea utf-8, precum și suportul pentru limbile de la dreapta la stânga. Mai multe caracteristici importante, cum ar fi selectarea tipului și mărimii fontului, marginile personalizate, unitățile de măsură, adăugarea unui cod de bare, adăugarea unui tabel, inserarea paginilor, mutarea paginii, ștergerea paginilor și multe altele.
Creați documente PDF prin 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');
Suporta coduri de bare în fișiere PDF prin PHP
Biblioteca PHP open source oferă funcționalitate pentru includerea codului de bare în documentele PDF folosind câteva rânduri de cod PHP. Dezvoltatorii pot folosi cu ușurință diferite tipuri de coduri de bare 1D (COD 39, CODE 128 AUTO, EAN 8, UPC-E, MSI, CODABAR, CODE 11, RMS4CC) și coduri de bare 2D (QR-Code, Datamatrix ECC200 și PDF417). De asemenea, oferă suport pentru funcții precum setarea înălțimii codului de bare, alinierea codului de bare, setarea marginilor, aplicarea sumei de control și multe altele.
Creați documente PDF prin 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();
Adăugați anteturi/subsoluri personalizate în PDF
Anteturile și subsolurile sunt părți foarte utile ale unui document PDF care ajută utilizatorii să-și organizeze fișierele PDF și să fie mai ușor de citit. Biblioteca cu sursă deschisă TCPDF facilitează munca dezvoltatorului prin includerea de funcționalități pentru adăugarea antetelor și subsolurilor personalizate la documentele PDF cu doar câteva rânduri de cod PP. Acceptă funcții precum setarea fonturilor pentru anteturi și subsoluri, setarea marginilor, întreruperile automate de pagină, adăugarea de imagini în interiorul antetului/subsolului, adăugarea numerelor de pagină și așa mai departe.
Setați anteturi/subsoluri personalizate în PDF prin 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');
}
}
Creați un cuprins
Biblioteca PHP open source TCPDF oferă funcționalitate pentru crearea unui cuprins în aplicațiile lor. Utilizările unui Cuprins ajută cititorii să înțeleagă structura documentelor și pot găsi rapid informațiile pe care le caută. Pentru a crea un cuprins, trebuie să adăugați o nouă pagină pentru TOC și puteți scrie titlul TOC și/sau alte elemente pe pagina TOC. De asemenea, puteți defini cu ușurință stiluri pentru diferite niveluri de marcaj pentru diferite elemente HTML.
Cum să adăugați TOC în PDF prin 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');
Gestionați adnotările PDF prin biblioteca PHP
Adnotările sunt un set complet de obiecte care pot fi adăugate paginilor PDF fără a modifica conținutul paginii. Mai mult, ajută la explicarea conținutului său sau la extinderea a ceea ce este deja prezent. Biblioteca PHP open source TCPDF oferă suport pentru crearea unei varietăți de adnotări, cum ar fi adnotări de text, adnotări de link, text de marcare, adnotări de ștampilă și așa mai departe.
Adăugați adnotări text PDF prin 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');