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

การติดตั้ง NextPDF

ติดตั้งดิสทริบิวชัน NextPDF ใดก็ได้ด้วยคำสั่งตัวจัดการแพ็กเกจเพียงคำสั่งเดียว ดิสทริบิวชันของ PHP ใช้ Composer ส่วน Python software development kit (SDK) ใช้ pip เลือกแท็บที่ตรงกับสิ่งที่คุณกำลังสร้าง เรียกใช้คำสั่ง แล้วตรวจสอบผลลัพธ์ที่ด้านล่างของหน้านี้

NextPDF ออกแบบมาสำหรับรันไทม์สมัยใหม่เพียงชุดเดียว ข้อจำกัดเหล่านี้มาจากไฟล์ composer.json ของแพ็กเกจโดยตรง

ข้อกำหนดขณะทำงานของ NextPDF ที่อ่านจากไฟล์ composer.json ของแต่ละแพ็กเกจเอง
ข้อกำหนดข้อจำกัดสถานะหมายเหตุ
PHP>=8.4 <9.0จำเป็นComposer จะไม่ยอมติดตั้งบน PHP 8.3 หรือต่ำกว่า หรือบน PHP 9
Composer2.xจำเป็นจำเป็นสำหรับการจัดการการอ้างอิงและการสร้าง autoloader
ext-mbstringจำเป็นการจัดการสตริงแบบหลายไบต์สำหรับการจัดวางข้อความ
ext-zlibจำเป็นการบีบอัดสตรีมสำหรับอ็อบเจกต์ Portable Document Format (PDF)
ext-intlจำเป็นบริการของ International Components for Unicode (ICU): ข้อความแบบสองทิศทาง การตัดบรรทัด และการจัดรูปแบบตามโลแคล
ext-gdจำเป็นการถอดรหัสและประมวลผลภาพแรสเตอร์สำหรับภาพที่ฝังอยู่
ext-curlจำเป็นการรับส่งข้อมูลผ่านเครือข่าย: การประทับเวลาแบบ RFC 3161 และการดึงแอสเซตจากระยะไกล การสร้างแบบออฟไลน์ไม่ได้เรียกใช้ส่วนนี้ แต่ Composer ก็ยังต้องการอยู่ดี
ext-opensslจำเป็นการเข้ารหัสลับสำหรับลายเซ็นดิจิทัล โครงสร้าง CMS และการเข้ารหัส
Chrome or Chromiumไม่บังคับสำหรับตัวเรนเดอร์ Artisan (writeHtmlChrome()) เท่านั้น
Gotenberg serviceไม่บังคับสำหรับการแปลงไฟล์ office และ HTML ผ่าน Gotenberg เท่านั้น
Python3.10+ไม่บังคับสำหรับ Python software development kit (SDK) เท่านั้น

ext-mbstring และ ext-zlib มาพร้อมและเปิดใช้งานอยู่แล้วในบิลด์ของ PHP ส่วนใหญ่ ส่วน ext-intl ext-gd ext-curl และ ext-openssl แตกต่างกันไปตามดิสทริบิวชัน จึงควรตรวจสอบทั้งหกส่วนด้วย php -m ก่อนติดตั้ง การผสานรวมจะตรวจสอบส่วนขยายที่จำเป็นระหว่างการบูต และจะหยุดทำงานพร้อมข้อความที่ชัดเจนหากขาดส่วนใด

หากต้องการสร้างและตรวจสอบไฟล์ PDF จาก PHP คุณต้องใช้เอนจินหลักเท่านั้น

Terminal window
composer require nextpdf/core

คอมมิต composer.lock เพื่อให้เวิร์กเกอร์ทุกตัวที่นำไปใช้งานจริงใช้เอนจินเวอร์ชันเดียวกัน หลังการติดตั้ง ให้ไปต่อที่ PDF แรกของคุณ ได้

ติดตั้งอะแดปเตอร์เฟรมเวิร์กหนึ่งตัวเพื่อให้ได้คอนเทนเนอร์ไบนดิง ตัวช่วยจัดการ response และคิวงาน อะแดปเตอร์แต่ละตัวประกาศ nextpdf/core และแก้ไขให้คุณเอง

Terminal window
composer require nextpdf/laravel

Auto-discovery จะลงทะเบียน service provider และ facade Pdf จากนั้นเผยแพร่ไฟล์การกำหนดค่า:

Terminal window
php artisan vendor:publish --tag=nextpdf-config

ดูคู่มือการติดตั้ง Laravel และการเริ่มต้นใช้งานฉบับย่อ Laravel ประกอบได้

NextPDF เรนเดอร์ HTML เป็น PDF ได้สามวิธี ให้ติดตั้งตัวเลือกตามตำแหน่งที่คุณต้องการให้การเรนเดอร์ทำงาน ไม่มีตัวเลือกใดในนี้แทนที่ writeHtml() ซึ่งเป็นไปป์ไลน์ HTML แบบ pure-PHP ที่มีอยู่ในเอนจินหลัก

Terminal window
composer require nextpdf/artisan

แพ็กเกจนี้เพิ่มการเรนเดอร์แบบ headless-Chrome ผ่าน Chrome DevTools Protocol (CDP) คุณยังต้องมีไบนารี Chrome หรือ Chromium ที่โฮสต์เข้าถึงได้ หลังการติดตั้ง ให้เรียก writeHtmlChrome() บนเอกสาร ดูการเริ่มต้นใช้งานฉบับย่อ Artisan ประกอบได้

NextPDF Server (เรียกอีกชื่อหนึ่งว่า Connect) เป็นบริการแบบสแตนด์อะโลนที่เปิดให้เข้าถึงเอนจินผ่าน Model Context Protocol (MCP), Representational State Transfer (REST) และ gRPC

Terminal window
composer require nextpdf/server

แพ็กเกจนี้เพิ่มจุดเข้าใช้งานแบบคอนโซลไปยัง vendor/bin/ ซึ่งรวมถึง vendor/bin/nextpdf-mcp (เซิร์ฟเวอร์ MCP แบบ stdio) และ vendor/bin/nextpdf-server (เซิร์ฟเวอร์ REST) ทรานสปอร์ต REST และ gRPC ยังต้องใช้ไบนารี RoadRunner:

Terminal window
./vendor/bin/rr get-binary

ดูคู่มือการติดตั้ง Connect และการเริ่มต้นใช้งานฉบับย่อ Connect ประกอบได้

Python SDK เป็นไคลเอนต์แบบมีชนิดข้อมูลสำหรับ NextPDF Server ที่กำลังทำงานอยู่ ติดตั้งจาก Python Package Index (PyPI):

Terminal window
pip install nextpdf

SDK ต้องใช้ Python 3.10 หรือใหม่กว่า และเอนด์พอยต์ NextPDF Server ที่เข้าถึงได้ ดูการเริ่มต้นใช้งานฉบับย่อ Python SDK ประกอบได้

ยืนยันว่าแต่ละดิสทริบิวชันติดตั้งถูกต้องก่อนเริ่มเขียนโค้ด

Terminal window
composer show nextpdf/core

บรรทัดที่แสดงเวอร์ชันเป็นการยืนยันว่าเอนจินติดตั้งแล้วและพร้อมใช้งานกับ autoloader