Panoramica Pacchetto Core
Core · LGPL-3.0Il pacchetto Core (yeeefang/tcpdf-next) è il fondamento dell'ecosistema TCPDF-Next. Contiene tutto il necessario per la generazione di documenti PDF 2.0.
In Sintesi
| Metrica | Valore |
|---|---|
| File sorgente PHP | 148 |
| Moduli | 16 |
| Test | 908+ |
| Asserzioni | 28,881+ |
| Livello PHPStan | 10 |
| Punto di ingresso | Document::create() |
| Licenza | LGPL-3.0-or-later |
Punto di Ingresso
Tutti i documenti iniziano con Document::create():
use Yeeefang\TcpdfNext\Core\Document;
$pdf = Document::create()
->setTitle('My Document')
->addPage()
->setFont('Helvetica', '', 12)
->cell(0, 10, 'Hello World')
->save('output.pdf');La classe Document è final e implementa PdfDocumentInterface. La sua funzionalità proviene da 12 trait componibili — vedi Filosofia Design per dettagli.
Mappa Moduli
| Modulo | Namespace | File | Documentazione |
|---|---|---|---|
| Core | Core\ | 6 | Document |
| Contracts | Contracts\ | 7 | Riferimento API |
| ValueObjects | ValueObjects\ | 5 | Value Objects |
| Support | Support\ | 1 | Riferimento API |
| Content | Content\ | 6 | Output Testo |
| Typography | Typography\ | 14 | Tipografia, Font |
| Graphics | Graphics\ | 19 | Colori, Grafica, Immagini |
| Layout | Layout\ | 6 | Layout |
| Html | Html\ | 8 | Rendering HTML |
| Form | Form\ | 5 | Form |
| Barcode | Barcode\ | 12 | Codici a Barre |
| Navigation | Navigation\ | 11 | Navigazione |
| Accessibility | Accessibility\ | 3 | PDF Taggato |
| Security | Security\ | 14 | Crittografia, Firme |
| Writer | Writer\ | 8 | Output |
Capacità
Testo & Tipografia
Unicode, BiDi (testo bidirezionale), CJK, shaping Arabo, sillabazione. Subsetting font TTF/OTF/Type1/CFF. 14 font PDF standard integrati.
Grafica
Forme (linea, rettangolo, cerchio, ellisse, poligono, stella, freccia, curva), gradienti (lineare, radiale, Coons patch mesh, Gouraud triangle mesh), riempimenti pattern, parsing SVG/EPS, supporto immagini (PNG, JPEG, WebP, AVIF).
Rendering HTML
Parser HTML integrato che supporta div, p, h1-h6, table (colspan/rowspan), liste, styling inline. Per CSS3 completo (Flexbox, Grid, web font), usa il pacchetto Artisan.
Codici a Barre
1D: Code 128, EAN-8/13, UPC-A/E, Code 39/93, GS1-128, IMB e altro. 2D: QR Code (ISO 18004), DataMatrix (ISO 16022), PDF417 (ISO 15438).
Sicurezza
Crittografia AES-256 (AESV3 Rev 6) con SASLprep. Firme digitali PAdES B-B con aspetto visibile/invisibile. Client timestamp RFC 3161.
Form
Campi AcroForm: testo, checkbox, radio button, list box, combo box, button. Appiattimento form.
Navigazione
Segnalibri, link interni/esterni, destinazioni nominate, annotazioni, indice, allegati file, JavaScript.
Output
Salva su file, visualizzazione inline, download, buffer stringa. Output streaming per documenti grandi. Linearizzazione per visualizzazione web progressiva. Modalità deterministica per build riproducibili.
