Skip to content

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:

CodiceStile
''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);

Rilasciato sotto licenza LGPL-3.0-or-later.