NextPDF compat-legacy kurulumu
Bir bakışta
“Bir bakışta” başlıklı bölümnextpdf/compat-legacy bir Composer kitaplığıdır. PHP 8.4 veya üzerini ve nextpdf/core ^3.0 sürümünü gerektirir. Geçiş yapabileceğiniz bir uyumluluk sınıfı eklemek için kitaplığı kurun; mevcut TCPDF çağrılarınız aynı kalır.
Gereksinimler
“Gereksinimler” başlıklı bölüm| Bağımlılık | Sürüm | Yetkili kaynak |
|---|---|---|
| PHP | >=8.4 <9.0 | paket composer.jsonrequire.php |
nextpdf/core | ^3.0 | paket composer.jsonrequire |
| Composer | 2.7 veya üzeri | araç zinciri temel düzeyi |
Paket kendi test paketiyle birlikte gelir ve baseline olmadan PHPStan Level 10 raporlar. Çalışma zamanında PHP 8.4 gerektirir. Daha geniş NextPDF motoru, backport hattında PHP 8.1’den 8.4’e kadar olan sürümleri destekler; ancak bu bağdaştırıcı alt sınır olarak PHP 8.4’ü belirler.
Kurulum
“Kurulum” başlıklı bölümPaketi eklemek için Composer’ı kullanın:
composer require nextpdf/compat-legacy:^3.0Composer, nextpdf/core ^3.0 bağımlılığını geçişli bir bağımlılık olarak çözer. Çekirdek özellik kümesi başka herhangi bir çalışma zamanı uzantısı gerektirmez.
Paket meta verileri, eski ad olan
nextpdf/compat-tcpdfadını da bir Composerreplacegirdisi aracılığıyla kabul eder. Yeni kurulumlarda, asıl paket adı olannextpdf/compat-legacygerektirilmelidir.
Kurulumu doğrulama
“Kurulumu doğrulama” başlıklı bölümKurulumdan sonra bağdaştırıcı sınıfının yüklendiğini ve motor bağlantısının çözümlendiğini onaylayın. Aşağıdaki denetim, tek sayfalık bir Taşınabilir Belge Biçimi (PDF) dosyasını tamamen bellekte oluşturur ve PDF başlığını doğrular. tests/Unit/Compat/Tcpdf/TcpdfOutputTest.php paket testinin doğruladığı yüzeyin aynısını sınar.
<?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";Çalıştırın:
php examples/install-verify.phpBeklenen çıktı tek bir OK: satırıdır. Döndürülen dizedeki %PDF öneki, bağdaştırıcının bir NextPDF\Core\Document oluşturduğunu, sayfa ve metin çağrılarını devrettiğini ve geçerli PDF 2.0 çıktısını serileştirdiğini onaylar.
Motor sürümünü doğrulama
“Motor sürümünü doğrulama” başlıklı bölümBağdaştırıcı, nextpdf/core ^3.0 sürümünü gerektirir. Composer’ın çözdüğü sürümü onaylayın:
composer show nextpdf/core --format=jsonComposer, ^3.0 aralığı dışında bir çekirdek sürümünü çözerse, bağdaştırıcı yanlış çıktı üretmek yerine oluşturma sırasında hızla başarısız olur. Projeniz motora doğrudan da bağımlıysa, motoru composer.json dosyanızda açıkça sabitleyin.
İsteğe bağlı: genel sınıf takma adları
“İsteğe bağlı: genel sınıf takma adları” başlıklı bölümKod tabanınız genel ad alanında new \TCPDF(...) çağrısını yapıyorsa ve bu use/require satırlarını henüz değiştiremiyorsanız, paket genel takma adları kaydedebilir. Bu davranış açıkça etkinleştirmeye bağlıdır ve /integrations/tcpdf-compat/boot-and-discovery/. sayfasında açıklanmıştır. Aynı işlemde gerçek TCPDF kitaplığı da yüklüyse bunu etkinleştirmeyin; çakışma önleme kuralı için /integrations/tcpdf-compat/troubleshooting/ sayfasına bakın.
Kurulumun yapmadıkları
“Kurulumun yapmadıkları” başlıklı bölüm- Mevcut bir TCPDF bağımlılığını değiştirmez veya kaldırmaz.
tecnickcom/tcpdfpaketini yalnızca /integrations/tcpdf-compat/migration/. sayfasındaki bilinçli bir sonraki adım olarak kaldırın. - Dijital imzaları veya PDF/A’yı etkinleştirmez. Bu özellikler ticari bir NextPDF sürümü gerektirir (bkz. /integrations/tcpdf-compat/security-and-operations/).
- PDF çıktı hedefini değiştirmez. Çıktı her zaman PDF 2.0’dır.
Sonraki adımlar
“Sonraki adımlar” başlıklı bölüm- /integrations/tcpdf-compat/quickstart/ — ilk gerçek belgenizi oluşturun.
- /integrations/tcpdf-compat/configuration/ — katı modu ve bağdaştırıcıyı yapılandırın.
- /integrations/tcpdf-compat/migration/ — dosya dosya geçiş stratejisini kullanın.
- /integrations/tcpdf-compat/method-coverage/ — her TCPDF yönteminin burada tam olarak ne yaptığını görün.
Ayrıca bkz.
“Ayrıca bkz.” başlıklı bölüm- Paket
composer.jsondosyası — yetkili bağımlılık kısıtlamaları docs/TCPDF_COVERAGE.md— yetkili kapsam matrisi (depo içi)