Tipografia (HasTypography)
Il trait HasTypography controlla l'aspetto visuale del testo: famiglia font, stile, dimensione, spaziatura, stretching, colore, ombra e modalità rendering. Tutti i metodi restituiscono static per concatenazione fluente.
Impostazione Font
setFont()
Imposta famiglia font corrente, stile e dimensione in una singola chiamata.
php
use Yeeefang\TcpdfNext\Core\Document;
$pdf = Document::create()
->addPage()
->setFont('Helvetica', '', 12)
->cell(0, 10, 'Normal text', newLine: true)
->setFont('Helvetica', 'B', 14)
->cell(0, 10, 'Bold text', newLine: true)
->setFont('Helvetica', 'BI', 16)
->cell(0, 10, 'Bold Italic text', newLine: true);Stili Font
Combina caratteri stile per applicare effetti multipli:
| Codice | Stile |
|---|---|
'' | Regolare |
'B' | Grassetto |
'I' | Corsivo |
'BI' | Grassetto Corsivo |
'U' | Sottolineato |
'D' | Barrato |
'O' | Sovrascritto |
Gli stili possono essere combinati liberamente: 'BIU' produce testo grassetto, corsivo, sottolineato.
php
$pdf->setFont('Helvetica', 'BU', 12)
->cell(0, 10, 'Bold + Underline', newLine: true)
->setFont('Helvetica', 'ID', 12)
->cell(0, 10, 'Italic + Strikethrough', newLine: true)
->setFont('Helvetica', 'BO', 12)
->cell(0, 10, 'Bold + Overline', newLine: true);setFontSize()
Cambia dimensione font senza cambiare famiglia o stile.
php
$pdf->setFont('Helvetica', 'B', 12)
->cell(0, 10, '12pt heading', newLine: true)
->setFontSize(10)
->cell(0, 10, '10pt body text', newLine: true)
->setFontSize(8)
->cell(0, 10, '8pt footnote', newLine: true);Spaziatura e Stretching
setFontSpacing()
Regola lo spazio extra (in punti) inserito tra ogni coppia di caratteri.
php
$pdf->setFont('Helvetica', '', 12)
->setFontSpacing(0)
->cell(0, 10, 'Normal spacing', newLine: true)
->setFontSpacing(1.5)
->cell(0, 10, 'Expanded spacing', newLine: true)
->setFontSpacing(-0.5)
->cell(0, 10, 'Tight spacing', newLine: true);