ข้ามไปยังเนื้อหา

ชุดสูตรการผสานการทำงาน

core ของ NextPDF เรนเดอร์ Portable Document Format (PDF) 2.0 จาก PHP แพ็กเกจการผสานการทำงานทั้งเก้ารายการเชื่อมต่อเอนจินนี้เข้ากับเฟรมเวิร์ก แบ็กเอนด์การเรนเดอร์ ฐานโค้ดรุ่นเดิม ไปป์ไลน์การ build หรือบริการบนเครือข่าย หน้านี้อธิบายว่าแต่ละการผสานการทำงานมีไว้เพื่ออะไร แสดงชื่อแพ็กเกจและข้อจำกัดเวอร์ชันของ core (อ่านโดยตรงจาก composer.json ของแพ็กเกจ) และลิงก์ไปยังสูตรเฉพาะของการผสานการทำงานแต่ละรายการ ซึ่งจะปรากฏที่นี่เมื่อ source repository ส่งมอบ docs/public/ tree ของตน

หน้านี้เป็นดัชนี จึงไม่กล่าวอ้างเชิงพฤติกรรมเกี่ยวกับการผสานการทำงานใดๆ repository ของการผสานการทำงานแต่ละรายการเป็นเจ้าของสูตรของตนเอง ตัวรวบรวมจะดึงสูตรเหล่านั้นเข้ามาในเว็บไซต์นี้ จนกว่าสูตรจะพร้อมใช้งาน ลิงก์ของสูตรนั้นจะชี้ไปยังตัวยึดตำแหน่ง สำหรับคำแนะนำที่อิงตามกรณีการใช้งาน โปรดอ่าน เลือกการผสานการทำงาน สำหรับสัญญาที่สูตรซึ่งเรียกใช้ได้ทุกสูตรต้องปฏิบัติตาม โปรดอ่าน ข้อกำหนดของสูตร ประกอบ

แพ็กเกจทั้งเก้ารายการแบ่งออกเป็นห้ารูปแบบ โดยแต่ละรูปแบบบอกว่าการผสานการทำงานนั้นแก้ปัญหาประเภทใด

  • การผสานการทำงานกับเฟรมเวิร์ก เชื่อมต่อ NextPDF เข้ากับ service container และวงจรชีวิตคำขอของเฟรมเวิร์กแอปพลิเคชัน ได้แก่ nextpdf/laravel, nextpdf/symfony, nextpdf/codeigniter คุณติดตั้งหนึ่งรายการ รีโซลฟ์เซอร์วิส แล้วส่งคืนการตอบสนองแบบ PDF
  • สะพานเชื่อมการเรนเดอร์ ส่งขั้นตอน HTML-to-PDF หรือ Office-to-PDF ไปยังแบ็กเอนด์การเรนเดอร์ภายนอก แทนไปป์ไลน์แบบในกระบวนการ ได้แก่ nextpdf/artisan (headless Chrome ผ่าน Chrome DevTools Protocol), nextpdf/gotenberg (ไมโครเซอร์วิส Gotenberg), nextpdf/cloudflare (Cloudflare Browser Rendering ที่ edge)
  • ชิมเพื่อความเข้ากันได้ ช่วยให้ฐานโค้ดที่เขียนสำหรับไลบรารี PDF รุ่นเดิมเรียกใช้ NextPDF ได้ก่อนที่คุณจะเขียนใหม่ ได้แก่ nextpdf/compat-legacy
  • เครื่องมือ build สร้าง backport ของ NextPDF สำหรับ PHP 8.1 / 7.4 ให้รันไทม์ที่ไม่สามารถรัน 8.4 ได้ ได้แก่ nextpdf/backport-builder
  • บริการบนเครือข่าย เปิดให้ใช้งาน NextPDF ผ่าน Representational State Transfer (REST), gRPC และ Model Context Protocol สำหรับระบบ AI และผู้เรียกใช้จากระยะไกล ได้แก่ nextpdf/server (เผยแพร่ในชื่อ NextPDF Connect)

สะพานเชื่อมการเรนเดอร์ที่สื่อสารผ่าน Hypertext Transfer Protocol (HTTP) (nextpdf/gotenberg, nextpdf/cloudflare และเส้นทาง HTTP-client ใน nextpdf/laravel) ต้องใช้ HTTP client ตาม PHP Standard Recommendation 18 (PSR-18) ที่แอปพลิเคชันโฮสต์จัดหาให้ ภายใต้ PSR-18 §4 ไคลเอนต์จะโยนข้อยกเว้นแบบมีชนิด (typed client exception) เฉพาะเมื่อไม่สามารถส่งคำขอได้เลยเท่านั้น การตอบสนอง HTTP 4xx หรือ 5xx เป็นค่าที่ส่งคืนตามปกติ ไม่ใช่ข้อยกเว้น ภายใต้ PSR-18 §4 เดียวกัน สูตรที่เรียกใช้ตัวเรนเดอร์ระยะไกลจะจัดการข้อผิดพลาดในการส่งข้อมูลและสถานะที่ไม่สำเร็จเป็นคนละกรณีกัน

ค่าทุกค่าด้านล่างมาจาก composer.json ของแพ็กเกจที่ระบุ (แหล่งข้อมูลที่เชื่อถือได้) ข้อจำกัดของ core คือข้อกำหนด nextpdf/core ที่แพ็กเกจประกาศไว้ nextpdf/backport-builder ไม่ได้ประกาศข้อกำหนด nextpdf/core เพราะแพ็กเกจนี้แปลงซอร์สของเอนจินแทนการพึ่งพาเอนจินขณะรันไทม์

การผสานการทำงานแพ็กเกจรูปแบบข้อจำกัดของ coreสูตร
Laravelnextpdf/laravelเฟรมเวิร์ก^3.0 || ^5.2เริ่มต้นใช้งาน Laravel อย่างรวดเร็ว [[/integrations/laravel/quickstart/]]
Symfonynextpdf/symfonyเฟรมเวิร์ก^3.0 || ^5.2เริ่มต้นใช้งาน Symfony อย่างรวดเร็ว [[/integrations/symfony/quickstart/]]
CodeIgniter 4nextpdf/codeigniterเฟรมเวิร์ก^3.0 || ^5.2เริ่มต้นใช้งาน CodeIgniter อย่างรวดเร็ว [[/integrations/codeigniter/quickstart/]]
Artisan (Chrome)nextpdf/artisanสะพานเชื่อมการเรนเดอร์^3.0 || ^5.2เริ่มต้นใช้งาน Artisan อย่างรวดเร็ว [[/integrations/artisan/quickstart/]]
Gotenbergnextpdf/gotenbergสะพานเชื่อมการเรนเดอร์^3.0เริ่มต้นใช้งาน Gotenberg อย่างรวดเร็ว [[/integrations/gotenberg/quickstart/]]
Cloudflarenextpdf/cloudflareสะพานเชื่อมการเรนเดอร์^3.0เริ่มต้นใช้งาน Cloudflare อย่างรวดเร็ว [[/integrations/cloudflare/quickstart/]]
Compat (รุ่นเดิม)nextpdf/compat-legacyชิมเพื่อความเข้ากันได้^3.0เริ่มต้นใช้งาน Compat-legacy อย่างรวดเร็ว [[/integrations/compat-legacy/quickstart/]]
Backport buildernextpdf/backport-builderเครื่องมือ buildไม่มีเริ่มต้นใช้งาน Backport อย่างรวดเร็ว [[/integrations/backport/quickstart/]]
Connect (server)nextpdf/serverบริการบนเครือข่าย^3.0เริ่มต้นใช้งาน Connect อย่างรวดเร็ว [[/integrations/connect/quickstart/]]

NextPDF เผยแพร่ nextpdf/server ภายใต้ชื่อผลิตภัณฑ์ NextPDF Connect สูตรของแพ็กเกจนี้อยู่ภายใต้ slug connect ส่วน nextpdf/compat-legacy มาจากตระกูล compat และสูตรของแพ็กเกจนี้อยู่ภายใต้ slug compat-legacy เช่นกัน

ทุกแพ็กเกจต้องใช้ PHP >=8.4 <9.0 ในรันไทม์ของตนเอง nextpdf/backport-builder มีไว้เพื่อสร้างอาร์ติแฟกต์ที่รันบน PHP 8.1 (และเป้าหมาย 7.4) เอนจินที่ผ่านการ backport แล้ว ไม่ใช่ตัว builder คือส่วนที่รันบนรันไทม์รุ่นเก่า

  • nextpdf/laravel — service provider, facade และตัวช่วยสำหรับการตอบสนองแบบ PDF ของ Laravel 12 ใช้เมื่อแอปพลิเคชันของคุณเป็นแอป Laravel และต้องการรีโซลฟ์ NextPDF จาก container แล้วส่งคืนเป็นการตอบสนอง HTTP โดยไม่ต้องเชื่อมต่อเอง สูตรประกอบ: [[/integrations/laravel/quickstart/]]
  • nextpdf/symfony — bundle ของ Symfony 7 พร้อมเซอร์วิส dependency-injection และตัวช่วยสำหรับการตอบสนองแบบ PDF ใช้เมื่อแอปพลิเคชันของคุณเป็นแอป Symfony โดย bundle จะลงทะเบียนเอนจินเป็นเซอร์วิสและผสานการทำงานกับการตอบสนองของ symfony/http-foundation สูตรประกอบ: [[/integrations/symfony/quickstart/]]
  • nextpdf/codeigniter — เซอร์วิส, library wrapper และตัวช่วยสำหรับการตอบสนองแบบ PDF ของ CodeIgniter 4 ใช้เมื่อแอปพลิเคชันของคุณเป็นแอป CodeIgniter 4 และต้องการให้ NextPDF พร้อมใช้งานผ่าน service locator ของเฟรมเวิร์ก สูตรประกอบ: [[/integrations/codeigniter/quickstart/]]
  • nextpdf/artisan — ตัวเรนเดอร์ headless Chrome ผ่าน Chrome DevTools Protocol ใช้เมื่อเอกสารต้องการเอนจิน Cascading Style Sheets (CSS) ของเบราว์เซอร์เพื่อความเที่ยงตรงของเค้าโครง ซึ่งไปป์ไลน์ HTML แบบในกระบวนการไม่ได้ออกแบบมาเพื่อรองรับ และคุณสามารถรันกระบวนการ Chrome ใกล้กับแอปพลิเคชันได้ สูตรประกอบ: [[/integrations/artisan/quickstart/]]
  • nextpdf/gotenberg — การแปลง Office-to-PDF และ HTML-to-PDF ผ่านไมโครเซอร์วิส Gotenberg ใช้เมื่ออินพุตเป็นเอกสาร Office หรือเมื่อการเรนเดอร์ต้องรันนอกกระบวนการในเซอร์วิสแยกต่างหาก แพ็กเกจนี้สื่อสารผ่าน HTTP โดยใช้ PSR-18 client ที่โฮสต์จัดหาให้ สูตรประกอบ: [[/integrations/gotenberg/quickstart/]]
  • nextpdf/cloudflare — การเรนเดอร์ serverless ผ่าน Cloudflare Browser Rendering API ใช้เมื่อการเรนเดอร์ควรรันที่ edge โดยไม่ต้องดูแลกระบวนการเบราว์เซอร์ระยะยาว แพ็กเกจนี้สื่อสารผ่าน HTTP โดยใช้ PSR-18 client ที่โฮสต์จัดหาให้ สูตรประกอบ: [[/integrations/cloudflare/quickstart/]]
  • nextpdf/compat-legacy — ชั้นความเข้ากันได้สำหรับฐานโค้ดที่เขียนโดยอิงไลบรารี PDF รุ่นเดิม ใช้เพื่อเรียก NextPDF จากโค้ดเดิมก่อนที่คุณจะเขียนจุดเรียกใช้ใหม่ แพ็กเกจนี้เป็นตัวช่วยในการย้ายระบบ ไม่ใช่ dependency ถาวร สูตรประกอบ: [[/integrations/compat-legacy/quickstart/]]
  • nextpdf/backport-builder — ไปป์ไลน์ลดเวอร์ชันที่อิง Rector ซึ่งสร้าง build ของ NextPDF สำหรับ PHP 8.1 (และเป้าหมาย 7.4) ใช้เมื่อรันไทม์ไม่สามารถย้ายไป PHP 8.4 ได้ แต่คุณยังต้องการใช้เอนจินในรันไทม์นั้น แพ็กเกจนี้เป็นโครงสร้างพื้นฐานสำหรับการ build ไม่ใช่ dependency ขณะรันไทม์ของแอปพลิเคชัน สูตรประกอบ: [[/integrations/backport/quickstart/]]
  • nextpdf/server (NextPDF Connect) — เปิดให้ใช้งาน NextPDF ผ่าน REST API, เซอร์วิส gRPC และ Model Context Protocol ใช้เมื่อผู้เรียกใช้อยู่ระยะไกล ใช้ภาษาอื่น หรือเป็นระบบ AI ที่ต้องการ tool endpoint แทนไลบรารี PHP สูตรประกอบ: [[/integrations/connect/quickstart/]]

ตัวยึดตำแหน่ง [[…]] แต่ละรายการด้านบนเป็นการอ้างอิงล่วงหน้าไปยังหน้าที่เขียนขึ้นใน repository ของการผสานการทำงานภายใต้ docs/public/ และถูกดึงเข้ามายังเว็บไซต์นี้โดยตัวรวบรวม slug เป้าหมายใช้รูปแบบเดียวกัน:

/integrations/<integration>/<recipe>/

โทเค็น <integration> คือชื่อย่อที่นำมาจากตารางข้อมูลอ้างอิงแพ็กเกจและข้อจำกัดของ core ด้านบนโดยตรง แต่ละแถวในตารางนั้นให้ชื่อย่อหนึ่งชื่อ สูตรแรกที่การผสานการทำงานทุกรายการส่งมอบมีชื่อว่า quickstart สูตรถัดๆ ไปใช้เซกเมนต์ <recipe> เพิ่มเติมภายใต้ราก <integration> เดียวกัน จนกว่าหน้าเป้าหมายจะถูกรวบรวม ลิงก์ของหน้านั้นจะเป็นตัวยึดตำแหน่งและจะไม่รีโซลฟ์ ดัชนีนี้ไม่กล่าวอ้างเชิงพฤติกรรมเกี่ยวกับหน้าเป้าหมายใดๆ ดัชนีนี้บันทึกเฉพาะข้อเท็จจริงของแพ็กเกจที่ตรวจสอบจาก composer.json และ slug ที่สูตรของแต่ละ repository จะใช้