การติดตั้ง NextPDF
ภาพรวมโดยย่อ
หัวข้อที่มีชื่อว่า “ภาพรวมโดยย่อ”ติดตั้งดิสทริบิวชัน NextPDF ใดก็ได้ด้วยคำสั่งตัวจัดการแพ็กเกจเพียงคำสั่งเดียว ดิสทริบิวชันของ PHP ใช้ Composer ส่วน Python software development kit (SDK) ใช้ pip เลือกแท็บที่ตรงกับสิ่งที่คุณกำลังสร้าง เรียกใช้คำสั่ง แล้วตรวจสอบผลลัพธ์ที่ด้านล่างของหน้านี้
ข้อกำหนด
หัวข้อที่มีชื่อว่า “ข้อกำหนด”NextPDF ออกแบบมาสำหรับรันไทม์สมัยใหม่เพียงชุดเดียว ข้อจำกัดเหล่านี้มาจากไฟล์ composer.json ของแพ็กเกจโดยตรง
| ข้อกำหนด | ข้อจำกัด | หมายเหตุ |
|---|---|---|
| PHP | >=8.4 <9.0 | Composer จะปฏิเสธการติดตั้งบน PHP 8.3 หรือต่ำกว่า หรือบน PHP 9 |
| Composer | 2.7 หรือใหม่กว่า | จำเป็นสำหรับการแก้ไขดีเพนเดนซีและการสร้าง autoloader |
ext-mbstring | จำเป็น | การจัดการสตริงหลายไบต์สำหรับการจัดวางข้อความ |
ext-zlib | จำเป็น | การบีบอัดสตรีมสำหรับอ็อบเจกต์ Portable Document Format (PDF) |
| Chrome หรือ Chromium | ไม่บังคับ | สำหรับตัวเรนเดอร์ Artisan เท่านั้น (writeHtmlChrome()) |
| บริการ Gotenberg | ไม่บังคับ | สำหรับการแปลงเอกสารสำนักงานและ HTML ผ่าน Gotenberg เท่านั้น |
| Python | 3.10 หรือใหม่กว่า | สำหรับ Python SDK เท่านั้น |
ext-mbstring และ ext-zlib มาพร้อมและเปิดใช้งานอยู่แล้วในทุกบิลด์ของ PHP ที่รองรับ การผสานรวมจะตรวจสอบส่วนขยายเหล่านี้ระหว่างการบูต และจะหยุดทำงานพร้อมข้อความที่ชัดเจนหากขาดส่วนใดส่วนหนึ่ง
ติดตั้ง core
หัวข้อที่มีชื่อว่า “ติดตั้ง core”หากต้องการสร้างและตรวจสอบไฟล์ PDF จาก PHP คุณต้องใช้เอนจินหลักเท่านั้น
composer require nextpdf/coreคอมมิต composer.lock เพื่อให้เวิร์กเกอร์ทุกตัวที่นำไปใช้งานจริงใช้เอนจินเวอร์ชันเดียวกัน หลังการติดตั้ง ให้ไปต่อที่ PDF แรกของคุณ ได้
ติดตั้งการผสานรวมกับเฟรมเวิร์ก
หัวข้อที่มีชื่อว่า “ติดตั้งการผสานรวมกับเฟรมเวิร์ก”ติดตั้งอะแดปเตอร์เฟรมเวิร์กหนึ่งตัวเพื่อให้ได้คอนเทนเนอร์ไบนดิง ตัวช่วยจัดการ response และคิวงาน อะแดปเตอร์แต่ละตัวประกาศ nextpdf/core และแก้ไขให้คุณเอง
composer require nextpdf/laravelAuto-discovery จะลงทะเบียน service provider และ facade Pdf จากนั้นเผยแพร่ไฟล์การกำหนดค่า:
php artisan vendor:publish --tag=nextpdf-configดูคู่มือการติดตั้ง Laravel และการเริ่มต้นใช้งานฉบับย่อ Laravel ประกอบได้
composer require nextpdf/symfonyในแอปพลิเคชัน Symfony Flex บันเดิลจะลงทะเบียนตัวเอง ในแอปพลิเคชันที่ไม่ใช่ Flex ให้เพิ่ม NextPDF\Symfony\NextPdfBundle ลงใน config/bundles.php ด้วยตนเอง ดูคู่มือการติดตั้ง Symfony ประกอบได้
composer require nextpdf/codeigniterCodeIgniter 4 จะค้นพบคลาส Services และตัวช่วย pdf() โดยอัตโนมัติ จึงไม่จำเป็นต้องลงทะเบียนด้วยตนเอง ดูคู่มือการติดตั้ง CodeIgniter ประกอบได้
ติดตั้งตัวเรนเดอร์หรือบริการ
หัวข้อที่มีชื่อว่า “ติดตั้งตัวเรนเดอร์หรือบริการ”NextPDF เรนเดอร์ HTML เป็น PDF ได้สามวิธี ให้ติดตั้งตัวเลือกตามตำแหน่งที่คุณต้องการให้การเรนเดอร์ทำงาน ไม่มีตัวเลือกใดในนี้แทนที่ writeHtml() ซึ่งเป็นไปป์ไลน์ HTML แบบ pure-PHP ที่มีอยู่ในเอนจินหลัก
composer require nextpdf/artisanแพ็กเกจนี้เพิ่มการเรนเดอร์แบบ headless-Chrome ผ่าน Chrome DevTools Protocol (CDP) คุณยังต้องมีไบนารี Chrome หรือ Chromium ที่โฮสต์เข้าถึงได้ หลังการติดตั้ง ให้เรียก writeHtmlChrome() บนเอกสาร ดูการเริ่มต้นใช้งานฉบับย่อ Artisan ประกอบได้
composer require nextpdf/cloudflare guzzlehttp/guzzleการเรนเดอร์ทำงานผ่าน Cloudflare Browser Rendering ที่ edge บริดจ์นี้ขึ้นอยู่กับสัญญา PHP Standards Recommendation (PSR) เฉพาะ PSR-18 และ PSR-17 เท่านั้น คุณจึงต้องจัดหาไคลเอนต์ Hypertext Transfer Protocol (HTTP) ของคุณเอง (ในที่นี้แสดง Guzzle) ดูคู่มือการติดตั้ง Cloudflare ประกอบได้
composer require nextpdf/gotenberg guzzlehttp/guzzleแพ็กเกจนี้แปลงเอกสารสำนักงานและ HTML ผ่านบริการ Gotenberg คุณต้องจัดหาไคลเอนต์ PSR-18 และอินสแตนซ์ Gotenberg ที่เข้าถึงได้ ดูคู่มือการติดตั้ง Gotenberg ประกอบได้
ติดตั้งเซิร์ฟเวอร์
หัวข้อที่มีชื่อว่า “ติดตั้งเซิร์ฟเวอร์”NextPDF Server (เรียกอีกชื่อหนึ่งว่า Connect) เป็นบริการแบบสแตนด์อะโลนที่เปิดให้เข้าถึงเอนจินผ่าน Model Context Protocol (MCP), Representational State Transfer (REST) และ gRPC
composer require nextpdf/serverแพ็กเกจนี้เพิ่มจุดเข้าใช้งานแบบคอนโซลไปยัง vendor/bin/ ซึ่งรวมถึง vendor/bin/nextpdf-mcp (เซิร์ฟเวอร์ MCP แบบ stdio) และ vendor/bin/nextpdf-server (เซิร์ฟเวอร์ REST) ทรานสปอร์ต REST และ gRPC ยังต้องใช้ไบนารี RoadRunner:
./vendor/bin/rr get-binaryดูคู่มือการติดตั้ง Connect และการเริ่มต้นใช้งานฉบับย่อ Connect ประกอบได้
ติดตั้ง Python SDK
หัวข้อที่มีชื่อว่า “ติดตั้ง Python SDK”Python SDK เป็นไคลเอนต์แบบมีชนิดข้อมูลสำหรับ NextPDF Server ที่กำลังทำงานอยู่ ติดตั้งจาก Python Package Index (PyPI):
pip install nextpdfSDK ต้องใช้ Python 3.10 หรือใหม่กว่า และเอนด์พอยต์ NextPDF Server ที่เข้าถึงได้ ดูการเริ่มต้นใช้งานฉบับย่อ Python SDK ประกอบได้
ตรวจสอบการติดตั้ง
หัวข้อที่มีชื่อว่า “ตรวจสอบการติดตั้ง”ยืนยันว่าแต่ละดิสทริบิวชันติดตั้งถูกต้องก่อนเริ่มเขียนโค้ด
composer show nextpdf/coreบรรทัดที่แสดงเวอร์ชันเป็นการยืนยันว่าเอนจินติดตั้งแล้วและพร้อมใช้งานกับ autoloader
php artisan package:discover --ansiเอาต์พุตจะแสดง nextpdf/laravel อยู่ในรายการแพ็กเกจที่ค้นพบ
php bin/console debug:container nextpdfคอนเทนเนอร์จะรายงานเอเลียส nextpdf.document และเซอร์วิส PdfFactory
./vendor/bin/generate-skills --dry-run --list-toolsคำสั่งนี้บูตรีจิสทรีและพิมพ์เครื่องมือที่การติดตั้งนี้เปิดให้ใช้งาน โดยไม่เริ่มเซิร์ฟเวอร์
nextpdf versionสตริงที่แสดงเวอร์ชันเป็นการยืนยันว่า SDK นำเข้าได้สำเร็จ