Entegrasyon kılavuzu
Entegrasyon kılavuzu
“Entegrasyon kılavuzu” başlıklı bölümNextPDF çekirdeği, PHP üzerinden Taşınabilir Belge Biçimi (PDF) 2.0 çıktısı üretir. Dokuz entegrasyon paketi bu motoru bir çerçeveye, bir işleme arka ucuna, eski bir kod tabanına, bir derleme hattına veya bir ağ hizmetine bağlar. Bu sayfa, her entegrasyonun ne işe yaradığını açıklar, paket adını ve çekirdek sürüm kısıtını (doğrudan kendi composer.json dosyasından okunmuş olarak) listeler ve kaynak depolar kendi docs/public/ ağaçlarını yayınladıkça burada görünen her entegrasyona ait tariflere bağlantı verir.
Bu sayfa bir dizindir; bu nedenle hiçbir entegrasyon hakkında davranışsal iddia içermez. Her tarifin sahibi ilgili entegrasyon deposudur. Toplayıcı, bu tarifleri bu siteye çeker. Bir tarif yayınlanana kadar bağlantısı bir yer tutucuya işaret eder. Kullanım senaryonuza dayalı bir öneri için Bir entegrasyon seçin sayfasını okuyun. Çalıştırılabilir her tarifin uyduğu sözleşmeler için Tarif kuralları sayfasını okuyun.
Beş entegrasyon biçimi
“Beş entegrasyon biçimi” başlıklı bölümDokuz paket, beş biçime ayrılır. Her biçim, entegrasyonun hangi tür sorunu çözdüğünü gösterir.
- Çerçeve entegrasyonları, NextPDF uygulamasını bir uygulama çerçevesinin hizmet kapsayıcısına ve istek yaşam döngüsüne bağlar:
nextpdf/laravel,nextpdf/symfony,nextpdf/codeigniter. Birini kurar, bir hizmeti çözümler ve bir PDF yanıtı döndürürsünüz. - İşleyici köprüleri, HTML’den PDF’ye veya Office’ten PDF’ye adımını süreç içi hat yerine harici bir işleme arka ucuna gönderir:
nextpdf/artisan(Chrome DevTools Protocol üzerinden headless Chrome),nextpdf/gotenberg(bir Gotenberg mikro hizmeti),nextpdf/cloudflare(uçta Cloudflare Browser Rendering). - Bir uyumluluk katmanı, eski bir PDF kitaplığı için yazılmış bir kod tabanının, yeniden yazma işleminden önce NextPDF uygulamasını çağırmasına olanak tanır:
nextpdf/compat-legacy. - Bir derleme aracı, 8.4 sürümünü çalıştıramayan çalışma zamanları için NextPDF uygulamasının PHP 8.1 / 7.4 geriye taşımasını üretir:
nextpdf/backport-builder. - Bir ağ hizmeti, yapay zeka sistemleri ve uzak çağrıcılar için NextPDF uygulamasını Temsili Durum Aktarımı (REST), gRPC ve Model Context Protocol üzerinden sunar:
nextpdf/server(NextPDF Connect olarak dağıtılır).
Köprü Metni Aktarım Protokolü (HTTP) üzerinden iletişim kuran işleyici köprüleri (nextpdf/gotenberg, nextpdf/cloudflare ve nextpdf/laravel içindeki HTTP istemci yolu), ana bilgisayar uygulamasının sağladığı bir PHP Standart Önerisi 18 (PSR-18) HTTP istemcisine bağımlıdır. PSR-18 §4 uyarınca istemci, yalnızca isteği hiç gönderemediğinde tiplenmiş bir istemci özel durumu fırlatır. Bir HTTP 4xx veya 5xx yanıtı, aynı PSR-18 §4 maddesi uyarınca özel durum değil, normal bir dönüş değeridir. Uzak bir işleyiciyi çağıran tarifler, aktarım hatalarını ve başarısız yanıt durumlarını ayrı durumlar olarak ele alır.
Paket ve çekirdek kısıtı başvurusu
“Paket ve çekirdek kısıtı başvurusu” başlıklı bölümAşağıdaki her değer, adı geçen paketin composer.json dosyasından (yetkili kaynak) alınır. Çekirdek kısıtı, paketin bildirdiği nextpdf/core gereksinimidir. nextpdf/backport-builder, çalışma zamanında motora bağımlı olmak yerine motor kaynağını dönüştürdüğü için herhangi bir nextpdf/core gereksinimi bildirmez.
| Entegrasyon | Paket | Biçim | Çekirdek kısıtı | Tarif |
|---|---|---|---|---|
| Laravel | nextpdf/laravel | Çerçeve | ^3.0 || ^5.2 | Laravel hızlı başlangıcı [[/integrations/laravel/quickstart/]] |
| Symfony | nextpdf/symfony | Çerçeve | ^3.0 || ^5.2 | Symfony hızlı başlangıcı [[/integrations/symfony/quickstart/]] |
| CodeIgniter 4 | nextpdf/codeigniter | Çerçeve | ^3.0 || ^5.2 | CodeIgniter hızlı başlangıcı [[/integrations/codeigniter/quickstart/]] |
| Artisan (Chrome) | nextpdf/artisan | İşleyici köprüsü | ^3.0 || ^5.2 | Artisan hızlı başlangıcı [[/integrations/artisan/quickstart/]] |
| Gotenberg | nextpdf/gotenberg | İşleyici köprüsü | ^3.0 | Gotenberg hızlı başlangıcı [[/integrations/gotenberg/quickstart/]] |
| Cloudflare | nextpdf/cloudflare | İşleyici köprüsü | ^3.0 | Cloudflare hızlı başlangıcı [[/integrations/cloudflare/quickstart/]] |
| Compat (eski) | nextpdf/compat-legacy | Uyumluluk katmanı | ^3.0 | Compat-legacy hızlı başlangıcı [[/integrations/compat-legacy/quickstart/]] |
| Geriye taşıma derleyicisi | nextpdf/backport-builder | Derleme aracı | uygulanamaz | Backport hızlı başlangıcı [[/integrations/backport/quickstart/]] |
| Connect (sunucu) | nextpdf/server | Ağ hizmeti | ^3.0 | Connect hızlı başlangıcı [[/integrations/connect/quickstart/]] |
NextPDF, nextpdf/server paketini NextPDF Connect ürün adıyla dağıtır; tarifleri connect kısa adı altında bulunur. nextpdf/compat-legacy, compat ailesinden gelir; tarifleri compat-legacy kısa adı altında bulunur.
Her paket, kendi çalışma zamanında PHP >=8.4 <9.0 gerektirir. nextpdf/backport-builder, PHP 8.1 (ve bir 7.4 hedefi) üzerinde çalışan yapıtlar üretmek için vardır. Daha eski çalışma zamanında derleyici değil, ortaya çıkan geriye taşınmış motor çalışır.
Her entegrasyon ne işe yarar
“Her entegrasyon ne işe yarar” başlıklı bölümÇerçeve entegrasyonları
“Çerçeve entegrasyonları” başlıklı bölümnextpdf/laravel— bir Laravel 12 hizmet sağlayıcısı, cephe ve PDF yanıt yardımcıları. Uygulamanız bir Laravel uygulamasıysa ve NextPDF uygulamasının kapsayıcıdan çözümlenip elle bağlama yapmadan bir HTTP yanıtı olarak döndürülmesini istiyorsanız bunu kullanın. Tarif: [[/integrations/laravel/quickstart/]].nextpdf/symfony— bağımlılık enjeksiyonu hizmetleri ve PDF yanıt yardımcıları içeren bir Symfony 7 paketi. Uygulamanız bir Symfony uygulamasıysa bunu kullanın. Paket, motoru bir hizmet olarak kaydeder vesymfony/http-foundationyanıtlarıyla bütünleşir. Tarif: [[/integrations/symfony/quickstart/]].nextpdf/codeigniter— bir CodeIgniter 4 hizmeti, kitaplık sarmalayıcısı ve PDF yanıt yardımcıları. Uygulamanız bir CodeIgniter 4 uygulamasıysa ve NextPDF uygulamasının çerçevenin hizmet konumlandırıcısı aracılığıyla kullanılabilir olmasını istiyorsanız bunu kullanın. Tarif: [[/integrations/codeigniter/quickstart/]].
İşleyici köprüleri
“İşleyici köprüleri” başlıklı bölümnextpdf/artisan— Chrome DevTools Protocol üzerinden çalışan headless Chrome işleyicisi. Bir belge, süreç içi HTML hattının hedeflemediği düzeyde yerleşim doğruluğu için bir tarayıcının Basamaklı Stil Sayfaları (CSS) motoruna ihtiyaç duyduğunda ve uygulamaya yakın bir Chrome süreci çalıştırabildiğinizde bunu kullanın. Tarif: [[/integrations/artisan/quickstart/]].nextpdf/gotenberg— bir Gotenberg mikro hizmeti aracılığıyla Office’ten PDF’ye ve HTML’den PDF’ye dönüştürme. Girdi bir Office belgesi olduğunda veya işlemenin ayrı bir hizmette süreç dışında çalışması gerektiğinde bunu kullanın. Ana bilgisayarın sağladığı bir PSR-18 istemcisi aracılığıyla HTTP üzerinden iletişim kurar. Tarif: [[/integrations/gotenberg/quickstart/]].nextpdf/cloudflare— Cloudflare Browser Rendering API aracılığıyla sunucusuz işleme. İşleme, çalıştırılacak uzun ömürlü bir tarayıcı süreci olmadan uçta çalışması gerektiğinde bunu kullanın. Ana bilgisayarın sağladığı bir PSR-18 istemcisi aracılığıyla HTTP üzerinden iletişim kurar. Tarif: [[/integrations/cloudflare/quickstart/]].
Uyumluluk katmanı
“Uyumluluk katmanı” başlıklı bölümnextpdf/compat-legacy— eski bir PDF kitaplığı için yazılmış kod tabanları için bir uyumluluk katmanı. Çağrı yerlerini yeniden yazmadan önce mevcut koddan NextPDF uygulamasını çağırmak için bunu kullanın. Bu bir geçiş yardımcısıdır; kalıcı bir bağımlılık değildir. Tarif: [[/integrations/compat-legacy/quickstart/]].
Derleme aracı
“Derleme aracı” başlıklı bölümnextpdf/backport-builder— NextPDF’in PHP 8.1 (ve 7.4 hedefi) yapısını üreten, Rector tabanlı bir geriye taşıma hattı. Bir çalışma zamanı PHP 8.4 sürümüne geçemediğinde ve motora orada hâlâ ihtiyacınız olduğunda bunu kullanın. Bu, bir uygulamanın çalışma zamanı bağımlılığı değil, derleme altyapısıdır. Tarif: [[/integrations/backport/quickstart/]].
Ağ hizmeti
“Ağ hizmeti” başlıklı bölümnextpdf/server(NextPDF Connect) — NextPDF uygulamasını bir REST API, bir gRPC hizmeti ve Model Context Protocol üzerinden sunar. Çağrıcılar uzaksa, başka bir dil kullanıyorsa veya bir PHP kitaplığı yerine araç uç noktasına ihtiyaç duyan yapay zeka sistemleriyse bunu kullanın. Tarif: [[/integrations/connect/quickstart/]].
Tarif bağlantıları nasıl çözümlenir
“Tarif bağlantıları nasıl çözümlenir” başlıklı bölümYukarıdaki her [[…]] yer tutucusu, entegrasyonun kendi deposunda docs/public/ altında yazılmış ve toplayıcı tarafından bu siteye çekilmiş bir sayfaya yapılan ileri başvurudur. Hedef kısa adlar tek bir kurala uyar:
/integrations/<integration>/<recipe>/Bu kalıptaki <integration> belirteci, yukarıdaki paket ve çekirdek kısıtı başvuru tablosundan doğrudan alınan kısa addır. Bu tablodaki her satır bir kısa ad sağlar. Her entegrasyonun yayınladığı ilk tarif quickstart olarak adlandırılır; sonraki tarifler ek <recipe> bölümlerini aynı <integration> kökü altında kullanır. Bir hedef sayfa toplanana kadar bağlantı bir yer tutucu olarak kalır ve çözümlenmez. Bu dizin, hiçbir hedef sayfa hakkında davranışsal iddiada bulunmaz. Yalnızca composer.json dosyasından doğrulanmış paket bilgilerini ve her deponun tariflerinin yer alacağı kısa adı kaydeder.
Ayrıca bkz.
“Ayrıca bkz.” başlıklı bölüm- Bir entegrasyon seçin — kullanım örneklerini entegrasyonlarla eşleyen bir karar matrisi.
- Tarif kuralları — bu kılavuzdaki çalıştırılabilir her tarifin uyduğu sözleşmeler.