Pro редакция
Юридические функции
Краткий обзор
Заголовок раздела «Краткий обзор»NextPDF Pro применяет последовательную нумерацию Бейтса к страницам документа в соответствии с настройками. Он генерирует самодостаточные фрагменты потока содержимого PDF с настраиваемым префиксом, суффиксом, дополнением, позицией и необязательным переключаемым слоем содержимого.
Доступность и лицензирование
Заголовок раздела «Доступность и лицензирование»Эта возможность поставляется в NextPDF Pro (nextpdf/pro) и активируется лицензионным конвертом уровня Pro. Развёртывание без этого права доступа не загружает классы этой возможности. Сравнить редакции и получить лицензию.
Установка
Заголовок раздела «Установка»composer require nextpdf/pro:^3Концептуальный обзор
Заголовок раздела «Концептуальный обзор»Нумерация Бейтса проставляет на каждой странице последовательный идентификатор, что обычно используется для отслеживания страниц в процессе подготовки документов. NextPDF Pro предоставляет:
BatesNumberConfig— неизменяемый объект-значение конфигурации. Вы задаёте префикс (напримерCASE-2024-), суффикс, начальный номер, ширину дополнения нулями, семейство и размер шрифта, непрозрачность, позицию, отступ от края и то, размещать ли отметки на необязательном слое содержимого.BatesNumberer— движок. По количеству страниц и размерам каждой страницы он возвращает один самодостаточный фрагмент потока содержимого на страницу. Каждый фрагмент несёт собственное сохранение/восстановлениеq/Q, поэтому добавляется к содержимому существующей страницы, не нарушая прочую графику.BatesPosition— перечисление из шести предопределённых угловых позиций, у каждой настраиваемый отступ от края страницы. Перечисление вычисляет координаты в нативном пространстве PDF (начало координат в нижнем левом углу).
Необязательный слой содержимого позволяет средству просмотра включать и выключать отметки Бейтса, что оставляет исходное содержимое страницы неизменным.
Область применения
Заголовок раздела «Область применения»NextPDF Pro применяет нумерацию Бейтса ровно так, как вы её настроили. Схема нумерации, хранение и любое обращение с доказательствами — ваша ответственность и ответственность вашей юридической команды. NextPDF Pro не утверждает, что пронумерованный документ допустим в суде, юридически действителен или достаточен для правил раскрытия информации какой-либо юрисдикции. По процедурным и доказательственным требованиям обращайтесь к своим юридическим командам и командам по соответствию требованиям.
Почему это работает именно так
Заголовок раздела «Почему это работает именно так»Ключевое решение состоит в том, что BatesNumberer выдаёт один самодостаточный фрагмент потока содержимого на страницу, а не редактирует страницу на месте. Каждый фрагмент оборачивает своё рисование в собственное сохранение и восстановление q/Q, при необходимости внутри слоя размеченного содержимого OCG BDC/EMC. Поэтому отметка добавляется на страницу, не нарушая уже имеющуюся там графику, а исходные байты страницы остаются нетронутыми. Такая недеструктивная позиция делает отметки обратимыми: средство просмотра может выключить слой и восстановить исходную страницу. Это также сохраняет независимость каждой страницы. Нумерация остаётся линейной по количеству страниц, и отметка одной страницы не может повредить отметку другой.
Предыстория проектирования: Инкрементные обновления и почему они важны.
Поверхность API
Заголовок раздела «Поверхность API»| Класс | Ответственность |
|---|---|
BatesNumberConfig | Неизменяемые настройки оформления, нумерации и позиции. |
BatesNumberer | Генерация постраничных фрагментов потока содержимого. |
BatesPosition | Предопределённые угловые позиции с отступом от края. |
Пример кода — быстрый старт
Заголовок раздела «Пример кода — быстрый старт»use NextPDF\Pro\Legal\BatesNumberer;
$streams = BatesNumberer::generate( pageCount: 50, pageSizes: $pageSizes, prefix: 'EX-',);Пример кода — продакшен
Заголовок раздела «Пример кода — продакшен»use NextPDF\Pro\Legal\BatesNumberConfig;use NextPDF\Pro\Legal\BatesNumberer;use NextPDF\Pro\Legal\BatesPosition;
$config = new BatesNumberConfig( prefix: 'CASE-2024-', suffix: '-CONFIDENTIAL', padding: 6, position: BatesPosition::BottomRight, useLayer: true,);$streams = (new BatesNumberer($config))->generateStreams($pageCount, $pageSizes);Граничные случаи и подводные камни
Заголовок раздела «Граничные случаи и подводные камни»- Число возвращаемых фрагментов совпадает с количеством страниц; несоответствие длины
pageSizesприводит к быстрому отказу. - Настроенное семейство шрифтов должно быть доступно в реестре шрифтов.
- Непрозрачность и переключение слоя зависят от поддержки необязательного содержимого в средстве просмотра-потребителе.
Производительность
Заголовок раздела «Производительность»Генерация линейна по количеству страниц. Каждый фрагмент мал и независим.
Замечания по безопасности
Заголовок раздела «Замечания по безопасности»Отметки Бейтса — это накладываемое содержимое. Они не редактируют, не шифруют и иным образом не изменяют исходные данные страницы. Для редактирования или контроля доступа используйте модуль Security.
Соответствие
Заголовок раздела «Соответствие»| Поведение | Ссылка | Статус |
|---|---|---|
| Группы необязательного содержимого (переключаемый слой) | ISO 32000-2 §8.11 | Согласовано (перефразировано) |
Эта таблица фиксирует спецификацию, на которую опирается NextPDF Pro. Это не заявление о юридической действительности или доказательственной достаточности.
Контракт поведения
Заголовок раздела «Контракт поведения»BatesNumberConfig— неизменяемый объект-значение для префикса, суффикса, начального номера, ширины дополнения нулями, семейства и размера шрифта, непрозрачности, позиции, отступа от края и переключателя необязательного слоя содержимого.BatesNumbererвозвращает один самодостаточный фрагмент потока содержимого на страницу, каждый со своим сохранением/восстановлениемq/Q, поэтому добавляется, не нарушая прочую графику страницы. Число фрагментов совпадает с количеством страниц; несоответствие длиныpageSizesприводит к быстрому отказу.BatesPositionпредоставляет шесть предопределённых угловых позиций, вычисленных в нативном пространстве PDF (начало координат в нижнем левом углу), с настраиваемым отступом от края.- Отметки Бейтса — это накладываемое содержимое. Они не редактируют, не шифруют и не изменяют исходные данные страницы.
- Модуль применяет нумерацию Бейтса ровно так, как настроено. Он не утверждает, что пронумерованный документ допустим в суде, юридически действителен или достаточен для правил раскрытия информации какой-либо юрисдикции.
Граница с Enterprise
Заголовок раздела «Граница с Enterprise»Enterprise не меняет поведение Legal. Enterprise добавляет возможности соответствия требованиям и подписи более высокого уровня, документированные отдельно; они не требуются для нумерации Бейтса.
Резервный вариант / альтернатива в Core
Заголовок раздела «Резервный вариант / альтернатива в Core»Эквивалента настраиваемой нумерации Бейтса в Core нет. Это дополнение Pro.
Граница публикации
Заголовок раздела «Граница публикации»Эта страница документирует только внешне наблюдаемое поведение и поддерживаемую публичную поверхность API. Внутренние пути пространств имён, вспомогательные классы, таблицы механизмов, имена файлов runbook и префиксы тикетов выходят за рамки.
См. также
Заголовок раздела «См. также»- Merge — соберите наборы для подготовки до нумерации.
- Security — редактирование и контроль доступа.
- Legal — глубокий справочник — полный контракт API и детали поведения.