Instalacja warstwy zgodności compat-legacy NextPDF
W skrócie
Dział zatytułowany „W skrócie”nextpdf/compat-legacy to pakiet Composera. Wymaga PHP 8.4 lub nowszego oraz nextpdf/core ^3.0. Zainstaluj go, aby dodać klasę zgodności, na którą można się przełączyć; istniejące wywołania TCPDF pozostają bez zmian.
Wymagania
Dział zatytułowany „Wymagania”| Zależność | Wersja | Źródło miarodajne |
|---|---|---|
| PHP | >=8.4 <9.0 | pakietu composer.jsonrequire.php |
nextpdf/core | ^3.0 | pakietu composer.jsonrequire |
| Composer | 2.7 lub nowszy | bazowy zestaw narzędzi |
Pakiet dostarcza własny zestaw testów i deklaruje PHPStan Level 10 bez pliku bazowego. Do działania wymaga PHP 8.4. Silnik NextPDF jako całość obsługuje PHP od 8.1 do 8.4 w linii backportu, ale ten adapter ustala PHP 8.4 jako dolną granicę.
Instalacja
Dział zatytułowany „Instalacja”Użyj Composera, aby dodać pakiet:
composer require nextpdf/compat-legacy:^3.0Composer rozwiązuje nextpdf/core ^3.0 jako zależność przechodnią. Podstawowe funkcje nie wymagają żadnego dodatkowego rozszerzenia środowiska uruchomieniowego.
Metadane pakietu akceptują również historyczną nazwę
nextpdf/compat-tcpdfprzez wpisreplacew Composerze. W nowych instalacjach należy wymagaćnextpdf/compat-legacy, czyli kanonicznej nazwy pakietu.
Weryfikacja instalacji
Dział zatytułowany „Weryfikacja instalacji”Po instalacji potwierdź, że klasa adaptera ładuje się poprawnie, a powiązanie z silnikiem jest rozwiązywane. Poniższe sprawdzenie tworzy jednostronicowy plik w formacie Portable Document Format (PDF) w całości w pamięci i weryfikuje nagłówek PDF. Korzysta z tego samego zakresu API, który weryfikuje test pakietu tests/Unit/Compat/Tcpdf/TcpdfOutputTest.php.
<?php
declare(strict_types=1);
require __DIR__ . '/vendor/autoload.php';
use NextPDF\Compat\Tcpdf\TCPDF;
$pdf = new TCPDF('P', 'mm', 'A4');$pdf->AddPage();$pdf->SetFont('helvetica', '', 12);$pdf->Cell(0, 10, 'compat-legacy install verified');
$bytes = $pdf->Output('verify.pdf', 'S');
if (! str_starts_with($bytes, '%PDF')) { fwrite(STDERR, "Install check failed: output is not a PDF.\n"); exit(1);}
echo "OK: adapter loaded, engine linked, PDF produced (" . strlen($bytes) . " bytes).\n";Uruchom skrypt:
php examples/install-verify.phpOczekiwany wynik to pojedynczy wiersz OK:. Prefiks %PDF w zwróconym łańcuchu znaków potwierdza, że adapter utworzył NextPDF\Core\Document, przekazał wywołania strony i tekstu oraz wygenerował prawidłowy wynik PDF 2.0.
Weryfikacja wersji silnika
Dział zatytułowany „Weryfikacja wersji silnika”Adapter wymaga nextpdf/core ^3.0. Potwierdź wersję wybraną przez Composera:
composer show nextpdf/core --format=jsonJeśli Composer wybierze wersję rdzenia spoza ^3.0, adapter natychmiast zgłosi błąd podczas konstruowania obiektu, zamiast generować nieprawidłowy wynik. Jawnie przypnij silnik w pliku composer.json, jeśli projekt również zależy od niego bezpośrednio.
Opcjonalnie: globalne aliasy klas
Dział zatytułowany „Opcjonalnie: globalne aliasy klas”Jeśli baza kodu wywołuje new \TCPDF(...) w globalnej przestrzeni nazw i nie możesz jeszcze zmienić tych wierszy use/require, pakiet może zarejestrować globalne aliasy. Jest to zachowanie opcjonalne, opisane w /integrations/tcpdf-compat/boot-and-discovery/. Nie włączaj go, jeśli w tym samym procesie zainstalowana jest również właściwa biblioteka TCPDF; regułę unikania konfliktów opisano w /integrations/tcpdf-compat/troubleshooting/.
Czego instalacja nie robi
Dział zatytułowany „Czego instalacja nie robi”- Nie modyfikuje ani nie usuwa istniejącej zależności TCPDF.
tecnickcom/tcpdfusuwaj wyłącznie w ramach celowego, późniejszego kroku opisanego w /integrations/tcpdf-compat/migration/. - Nie włącza podpisów cyfrowych ani PDF/A. Te funkcje wymagają komercyjnej edycji NextPDF (zobacz /integrations/tcpdf-compat/security-and-operations/).
- Nie zmienia docelowego formatu wyjściowego PDF. Wynikiem jest zawsze PDF 2.0.
Następne kroki
Dział zatytułowany „Następne kroki”- /integrations/tcpdf-compat/quickstart/ — utwórz pierwszy prawdziwy dokument.
- /integrations/tcpdf-compat/configuration/ — skonfiguruj tryb ścisły i adapter.
- /integrations/tcpdf-compat/migration/ — zastosuj strategię migracji plik po pliku.
- /integrations/tcpdf-compat/method-coverage/ — sprawdź szczegółowo, co robi tutaj każda metoda TCPDF.
Zobacz też
Dział zatytułowany „Zobacz też”- Plik
composer.jsonpakietu — miarodajne ograniczenia zależności docs/TCPDF_COVERAGE.md— miarodajna macierz pokrycia (w repozytorium)