Skip to content

Pacchetto Adaptation

TCPDF-Next Adaptation
Adaptation · LGPL-3.0

Il pacchetto Adaptation fornisce un adapter drop-in retrocompatibile per TCPDF 6.2.13. Mappa 252 metodi legacy all'API moderna TCPDF-Next, permettendo alle codebase TCPDF esistenti di migrare con modifiche codice minime.

Quando Usare Adaptation

ScenarioRaccomandazione
Codebase TCPDF esistente (centinaia chiamate)Usa Adaptation — migra incrementalmente
Nuovo progetto da zeroUsa Core direttamente — API più pulita
Override Header() / Footer()Usa Adaptation — classe non-final supporta override
Classi helper legacy in usoUsa Adaptation — fornisce TCPDF_STATIC, TCPDF_FONTS, ecc.

Installazione

bash
composer require yeeefang/tcpdf-next-adaptation

Requisiti: yeeefang/tcpdf-next ^1.7

Avvio Rapido

Sostituisci il tuo import TCPDF e il codice funziona così com'è:

php
// Prima (TCPDF legacy)
// use TCPDF;

// Dopo (TCPDF-Next Adaptation)
use Yeeefang\TcpdfNext\Adaptation\TCPDF;

$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8');
$pdf->SetCreator('My App');
$pdf->SetAuthor('Author');
$pdf->SetTitle('Document');
$pdf->AddPage();
$pdf->SetFont('helvetica', '', 12);
$pdf->Cell(0, 10, 'Hello World', 0, 1);
$pdf->Output('/path/to/output.pdf', 'F');

Metodi Mappati

L'adapter mappa 252 metodi TCPDF legacy ai loro equivalenti TCPDF-Next.

La classe adapter TCPDF è non-final, quindi puoi fare override di Header() e Footer() come TCPDF legacy:

php
class MyPdf extends TCPDF
{
    public function Header(): void
    {
        $this->SetFont('helvetica', 'B', 12);
        $this->Cell(0, 10, 'My Header', 0, 1, 'C');
    }

    public function Footer(): void
    {
        $this->SetY(-15);
        $this->SetFont('helvetica', 'I', 8);
        $this->Cell(0, 10, 'Pagina ' . $this->getAliasNumPage(), 0, 0, 'C');
    }
}

Rilasciato sotto licenza LGPL-3.0-or-later.