Руководство по обновлению
TCPDF-Next в настоящее время находится на линейке релизов 1.x. Эта страница описывает политику версионирования и способы поддержания актуальности.
Семантическое версионирование
TCPDF-Next следует семантическому версионированию 2.0.0:
| Тип обновления | Значение | Безопасно обновлять? |
|---|---|---|
| Патч (1.0.x) | Исправления ошибок, документация, внутренний рефакторинг | Да — полностью обратно совместимо |
| Минор (1.x.0) | Новые функции, неразрушающие дополнения | Да — изменения существующего кода не требуются |
| Мажор (x.0.0) | Разрушающие изменения API | Сначала прочитайте руководство по миграции |
В серии 1.x публичный API считается стабильным. Любое разрушающее изменение будет отложено до следующего мажорного релиза и будет сопровождаться подробным руководством по миграции.
Проверка журнала изменений
Перед обновлением ознакомьтесь с CHANGELOG на GitHub. Каждый релиз содержит:
- Added — новые функции и классы
- Changed — изменения существующего поведения
- Deprecated — API, которые будут удалены в следующей мажорной версии
- Fixed — исправления ошибок
- Security — патчи безопасности (обновляйте немедленно)
Обновление через Composer
# Обновление до последней совместимой версии в рамках ваших ограничений
composer update yeeefang/tcpdf-next
# Или закрепите конкретную версию
composer require yeeefang/tcpdf-next:^1.2После обновления запустите набор тестов для проверки:
composer testМиграция с других библиотек
Если вы переходите с другой PDF-библиотеки, следующие руководства помогут вам сопоставить знакомые концепции с аналогами TCPDF-Next:
С legacy TCPDF
TCPDF-Next — это не форк. Это полностью переписанная с нуля библиотека с совершенно новым API. Ключевые отличия:
- Статические константы конфигурации заменены типизированными enum-ами и объектами значений.
- Глобальное состояние устранено — каждый экземпляр
Documentсамодостаточен. - Все классы по возможности
readonly, со строгимdeclare(strict_types=1). - Требуется PHP 8.5+ (см. Почему PHP 8.5?).
Миграционная шпаргалка с параллельным сравнением будет опубликована вместе со стабильным релизом 1.0.
С FPDF / FPDI
Методы cell/multiCell/text/write намеренно имеют похожие названия, поэтому кривая обучения минимальна. Основные отличия:
- Именованные параметры и enum-ы заменяют позиционные целочисленные флаги.
- Вывод использует enum
OutputDestinationвместо односимвольных строк. - Управление шрифтами осуществляется через
FontConfig, а не ручным размещением файлов.
С Dompdf / wkhtmltopdf
Если вы привыкли к конвертации HTML в PDF, обратите внимание на пакет Artisan, который предоставляет полноценный конвейер рендеринга CSS3 поверх TCPDF-Next Core. Для программного создания PDF подход через API, описанный в Базовое использование, будет более производительным и предсказуемым, чем генерация на основе HTML.