Skip to content

Paquete Adaptation

TCPDF-Next Adaptation
Adaptation · LGPL-3.0

El paquete Adaptation proporciona un adaptador retrocompatible directo para TCPDF 6.2.13. Mapea 252 métodos legacy a la API moderna de TCPDF-Next, permitiendo que los códigos base existentes de TCPDF migren con cambios de código mínimos.

Cuándo usar Adaptation

EscenarioRecomendación
Código base TCPDF existente (cientos de llamadas)Usa Adaptation -- migra incrementalmente
Proyecto nuevo desde ceroUsa Core directamente -- API más limpia
Sobrescribir Header() / Footer()Usa Adaptation -- clase no final soporta sobrescrituras
Clases helper legacy en usoUsa Adaptation -- proporciona TCPDF_STATIC, TCPDF_FONTS, etc.

Instalación

bash
composer require yeeefang/tcpdf-next-adaptation

Requisitos: yeeefang/tcpdf-next ^1.7

Inicio rápido

Reemplaza tu import de TCPDF y tu código funciona tal cual:

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

// After (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');

Métodos mapeados

El adaptador mapea 252 métodos legacy de TCPDF a sus equivalentes en TCPDF-Next, incluyendo:

Método legacyEquivalente TCPDF-Next
SetFont()setFont()
Cell()cell()
MultiCell()multiCell()
writeHTML()writeHtml()
Image()image()
Output()output()
SetProtection()setProtection()
setSignature()setSignature()

La clase adaptadora TCPDF es no final, así que puedes sobrescribir Header() y Footer() igual que en 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, 'Page ' . $this->getAliasNumPage(), 0, 0, 'C');
    }
}

Clases helper legacy

Para códigos base que referencian las clases helper estáticas de TCPDF:

Clase legacyEquivalente en Adaptation
TCPDF_STATICYeeefang\TcpdfNext\Adaptation\TCPDF_STATIC
TCPDF_FONTSYeeefang\TcpdfNext\Adaptation\TCPDF_FONTS
TCPDF_COLORSYeeefang\TcpdfNext\Adaptation\TCPDF_COLORS
TCPDF_IMAGESYeeefang\TcpdfNext\Adaptation\TCPDF_IMAGES

Estrategia de migración

  1. Instala el paquete Adaptation junto a tu código existente
  2. Cambia la declaración use de TCPDF a Yeeefang\TcpdfNext\Adaptation\TCPDF
  3. Ejecuta tus tests existentes -- deberían pasar sin cambios
  4. Migra gradualmente a la API fluent moderna donde sea conveniente
  5. Una vez completamente migrado, elimina el paquete Adaptation y usa Core directamente

Distribuido bajo la licencia LGPL-3.0-or-later.