Установка NextPDF
Краткий обзор
Заголовок раздела «Краткий обзор»Любой дистрибутив NextPDF устанавливается одной командой менеджера пакетов. Дистрибутивы для PHP используют Composer, а SDK для Python — pip. Выберите вкладку для того, что вы создаёте. Выполните команду, затем проверьте результат ниже на этой странице.
Требования
Заголовок раздела «Требования»NextPDF рассчитан на единую современную среду выполнения. Эти ограничения взяты непосредственно из файлов composer.json самих пакетов.
| Требование | Ограничение | Примечания |
|---|---|---|
| PHP | >=8.4 <9.0 | Composer отказывается выполнять установку на PHP 8.3 и ниже, а также на PHP 9. |
| Composer (менеджер зависимостей) | 2.7 или новее | Нужен для разрешения зависимостей и создания автозагрузчика. |
ext-mbstring | Обязательно | Обработка многобайтовых строк для компоновки текста. |
ext-zlib | Обязательно | Сжатие потоков для объектов в формате PDF (Portable Document Format). |
| Chrome или Chromium | Необязательно | Только для средства отрисовки Artisan (writeHtmlChrome()). |
| Сервис Gotenberg | Необязательно | Только для преобразования офисных документов и HTML через Gotenberg. |
| Python (язык программирования) | 3.10 или новее | Только для SDK для Python. |
ext-mbstring и ext-zlib включены в каждую поддерживаемую сборку PHP. Интеграции проверяют их наличие при запуске и завершают работу с понятным сообщением, если какого-либо из них не хватает.
Установка ядра
Заголовок раздела «Установка ядра»Для создания и анализа файлов PDF из PHP достаточно одного основного движка.
composer require nextpdf/coreЗафиксируйте composer.lock в системе контроля версий, чтобы каждый развёрнутый обработчик использовал одну и ту же версию движка. После установки перейдите к разделу «Ваш первый PDF».
Установка интеграции с фреймворком
Заголовок раздела «Установка интеграции с фреймворком»Установите один адаптер фреймворка, чтобы получить привязки к контейнеру, вспомогательные функции для ответов и задачи очереди. Каждый адаптер объявляет nextpdf/core и разрешает его за вас.
composer require nextpdf/laravelАвтообнаружение регистрирует поставщика служб и фасад 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 на чистом PHP в основном движке.
composer require nextpdf/artisanЭтот пакет добавляет отрисовку в headless-режиме Chrome через Chrome DevTools Protocol (CDP). Также нужен исполняемый файл Chrome или Chromium, доступный с хоста. После установки вызовите writeHtmlChrome() для документа. См. краткое руководство по Artisan.
composer require nextpdf/cloudflare guzzlehttp/guzzleОтрисовка выполняется через Cloudflare Browser Rendering на периферии сети. Пакет зависит только от контрактов PSR (PHP Standards Recommendation) PSR-18 и PSR-17, поэтому HTTP-клиент (Hypertext Transfer Protocol) вы предоставляете сами (здесь показан 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.
Установка SDK для Python
Заголовок раздела «Установка SDK для Python»SDK для Python — это типизированный клиент для запущенного NextPDF Server. Установите его из Python Package Index (PyPI):
pip install nextpdfДля SDK нужны Python 3.10 или новее и доступная конечная точка NextPDF Server. См. краткое руководство по SDK для Python.
Проверка установки
Заголовок раздела «Проверка установки»Убедитесь, что каждый дистрибутив установлен правильно, прежде чем приступать к написанию кода.
composer show nextpdf/coreСтрока с версией подтверждает, что движок установлен и доступен автозагрузчику.
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 импортируется без ошибок.