Enterprise редакция
Электронная подача документов
NextPDF Enterprise оптимизирует PDF в артефакт доставки, пригодный для электронной подачи в суды / государственные органы согласно профилю юрисдикции, и разбивает его на сегменты с ограниченным размером, когда превышен лимит размера профиля. Он подготавливает форматы для подачи согласно настройке; он не гарантирует, что какой-либо документ будет принят судом или реестром.
Доступность и лицензирование
Заголовок раздела «Доступность и лицензирование»Эта возможность поставляется в NextPDF Enterprise (nextpdf/enterprise) и активируется лицензионным конвертом уровня Enterprise. Развёртывание без этого права не загружает классы возможности. Сравнить редакции и получить лицензию.
Установка
Заголовок раздела «Установка»composer require nextpdf/enterprise:^3Концептуальный обзор
Заголовок раздела «Концептуальный обзор»EFilingOptimizer выполняет фиксированный конвейер над входным PDF:
- Обезвреживание. Активное содержимое (JavaScript и действия) удаляется движком обезвреживания и реконструкции содержимого.
- Линеаризация. Документ линеаризуется для быстрого веб-просмотра.
- Проверка размера и разбиение. Если результат превышает лимит размера профиля,
SizeAwareSplitterделит его на сегменты, каждый из которых помещается в лимит, используя бинарный поиск по числу страниц для выбора точек разбиения.
Профиль юрисдикции (EFilingProfile) несёт ограничения: максимальный размер файла на сегмент, качество перекодирования JPEG, уплощение форм, удаление JavaScript, линеаризацию и сжатие потоков объектов. Встроенные профили включают US PACER (лимит 25 MiB), EU e-Justice (лимит 10 MiB) и Taiwan Judicial Yuan (лимит 10 MiB). Результат (EFilingResult) сообщает сегменты, исходный и оптимизированный размеры, применённые оптимизации и любые предупреждения.
Вывод электронной подачи — это артефакт доставки, а не состояние жизненного цикла документа. Оптимизированный или разбитый PDF окончателен для передачи и не должен повторно входить в конвейер подписания или архивирования, потому что повторная обработка нарушила бы цепочки хешей и доказательственную целостность.
Что этот модуль заявляет и что не заявляет
Заголовок раздела «Что этот модуль заявляет и что не заявляет»Этот модуль подготавливает форматы для электронной подачи в суды / государственные органы согласно настройке. Он не гарантирует принятие каким-либо судом, реестром или порталом подачи. Правила портала, принимаемые форматы, лимиты размера и процедурные требования различаются по юрисдикциям и со временем меняются. Встроенные профили кодируют общеизвестные ограничения для удобства; сверьте их с актуальными правилами реестра-получателя перед подачей.
Почему это работает именно так
Заголовок раздела «Почему это работает именно так»Конвейер выполняется в одном фиксированном порядке — обезвреживание, линеаризация, проверка размера — потому что каждая стадия потребляет вывод предыдущей. Обезвреживание и реконструкция содержимого выполняется первой, потому что входные данные для подачи приходят от недоверенных сторон и должны быть обезврежены до перезаписи. Линеаризация предшествует проверке размера, потому что она меняет байтовую компоновку и, следовательно, размер, который должен учитывать разбиватель. Затем splitByMaxSize() проверяет каждый произведённый сегмент по лимиту maxFileSizeBytes профиля, а не полагается на оценку по среднему размеру страницы. Единственная страница, которая всё ещё превышает лимит, неделима, поэтому она всплывает как предупреждение, а не отбрасывается. Артефакт доставки исключается из повторного подписания и повторного архивирования, потому что повторная обработка поданных байтов нарушила бы доказательственные цепочки хешей.
Проектный контекст: Обезвреживание недоверенных PDF: обезвреживание и реконструкция содержимого.
Программный интерфейс
Заголовок раздела «Программный интерфейс»| Класс | Ответственность |
|---|---|
EFilingOptimizer | Выполнить конвейер обезвреживание → линеаризация → разбиение по размеру. |
EFilingProfile | Профиль ограничений юрисдикции (pacer(), euJustice(), taiwan() или пользовательский). |
SizeAwareSplitter | Разбить PDF на сегменты в пределах байтового лимита. |
EFilingSegment | Один выходной сегмент: байты, диапазон страниц, размер, индекс. |
EFilingResult | Сводка: сегменты, размеры, оптимизации, предупреждения. |
Пример кода — быстрый старт
Заголовок раздела «Пример кода — быстрый старт»use NextPDF\Enterprise\Document\EFiling\EFilingOptimizer;use NextPDF\Enterprise\Document\EFiling\EFilingProfile;
$result = (new EFilingOptimizer())->optimize($pdfBytes, EFilingProfile::pacer());Пример кода — продакшн
Заголовок раздела «Пример кода — продакшн»$result = (new EFilingOptimizer())->optimize($pdfBytes, EFilingProfile::euJustice());
foreach ($result->warnings as $warning) { $logger->warning('efiling.warning', ['message' => $warning]);}
foreach ($result->segments as $segment) { $store->put("filing/{$segment->segmentIndex}.pdf", $segment->pdfData);}// Confirm the destination registry's current rules before submitting.Граничные случаи и подводные камни
Заголовок раздела «Граничные случаи и подводные камни»- Документ, уже находящийся под лимитом профиля, возвращает единственный сегмент, неизменный по размеру.
- Единственную страницу, превышающую лимит, нельзя разбить дальше; она возвращается как один сегмент сверх лимита с предупреждением. Уменьшите качество изображений в пользовательском профиле или предобработайте страницу.
- Если обезвреживание отклоняет вход, записывается предупреждение и сохраняются исходные байты; изучите предупреждения перед подачей.
- Лимиты встроенных профилей отражают общеизвестные значения, а не «живой» поток от каждого портала. Считайте их значениями по умолчанию, которые нужно подтвердить.
Производительность
Заголовок раздела «Производительность»Стоимость растёт с размером документа и числом страниц. Разбиение выполняет бинарный поиск по числу страниц, поэтому число попыток разбиения логарифмично по числу страниц. Линеаризация и перекодирование преобладают по времени для крупных документов с большим количеством изображений.
Примечания по безопасности
Заголовок раздела «Примечания по безопасности»Активное содержимое удаляется до доставки путём обезвреживания и реконструкции содержимого. Считайте входные PDF от недоверенных сторон враждебными; шаг обезвреживания — это мера защиты, а не гарантия безопасности для последующих систем.
Резидентность данных и меры по защите PII
Заголовок раздела «Резидентность данных и меры по защите PII»Подаваемые документы часто содержат персональные данные и данные дела. Обработка выполняется внутри процесса и локально; модуль не делает исходящих сетевых вызовов. Применяйте собственные средства контроля хранения к сегментам и к оригиналу.
Безопасная телеметрия и очистка журналов
Заголовок раздела «Безопасная телеметрия и очистка журналов»Предупреждения и записи об оптимизации описывают действия конвейера, а не содержимое документа. Избегайте логирования путей к файлам или идентификаторов дел из окружающего кода в общих приёмниках.
Соответствие
Заголовок раздела «Соответствие»| Поведение | Ссылка | Статус |
|---|---|---|
| Семантика связи связанного файла | ISO 19005-3:2012 §6.7.8 | Соблюдается там, где применяются носители |
| Требования к носителю встроенного файла | ISO 19005-4:2020 Annex A | Соблюдается там, где применяются носители |
Эта таблица фиксирует спецификации, под которые выстроена окружающая обработка PDF/A. Это не заявление о принятии каким-либо судом или реестром.
Поведение в режиме FIPS
Заголовок раздела «Поведение в режиме FIPS»Этот модуль не выполняет криптографических операций.
Модель угроз
Заголовок раздела «Модель угроз»Основной ввод — это недоверенные входные PDF, несущие активное содержимое. Мера защиты: обезвреживание и реконструкция содержимого до линеаризации и доставки; артефакт доставки исключён из повторного подписания и повторного архивирования для защиты доказательственной целостности.
Контракт поведения
Заголовок раздела «Контракт поведения»EFilingOptimizerвыполняет фиксированный конвейер: обезвреживание и реконструкцию содержимого, линеаризацию, затем проверку размера с разбиением бинарным поиском, когда превышен лимит профиля.- Документ, уже находящийся под лимитом профиля, возвращает единственный сегмент, неизменный по размеру.
- Единственная страница сверх лимита возвращается как один сегмент сверх лимита с предупреждением; её нельзя разбить дальше.
- Артефакт электронной подачи окончателен для передачи и не должен повторно входить в конвейер подписания или архивирования; повторная обработка нарушила бы цепочки хешей и доказательственную целостность.
Граница публикации
Заголовок раздела «Граница публикации»Эта страница документирует только внешне наблюдаемое поведение и поддерживаемую поверхность публичного API. Внутренние пути пространств имён, вспомогательные классы, таблицы механизмов, имена файлов runbook и префиксы тикетов находятся вне области.
Резервный вариант Core
Заголовок раздела «Резервный вариант Core»У NextPDF Core нет оптимизатора электронной подачи по профилям юрисдикции, нет стадии обезвреживания CDR и нет разбивателя с учётом размера. Развёртывание только с Core должно само построить любой конвейер подготовки к подаче.
Резервный вариант Pro
Заголовок раздела «Резервный вариант Pro»NextPDF Pro не предоставляет оптимизатор электронной подачи по профилям юрисдикции, встроенные профили PACER / EU e-Justice / Taiwan Judicial Yuan, стадию обезвреживания CDR или разбиватель с учётом размера. Конфигурация, запрашивающая оптимизацию электронной подачи по профилю в развёртывании только с Pro, не имеет компонента Enterprise, который бы её удовлетворил. См. обзор Enterprise для поверхности Enterprise.
Примечание о границе Enterprise
Заголовок раздела «Примечание о границе Enterprise»Внутренние детали механизмов остаются во внутренней документации исходного репозитория и находятся вне области этого руководства.
Граница развёртывания
Заголовок раздела «Граница развёртывания»Лимиты встроенных профилей кодируют общеизвестные ограничения для удобства, а не «живой» поток от каждого портала; подтверждение их по актуальным правилам реестра-получателя перед подачей — это ответственность подающего. Обработка выполняется внутри процесса и локально; модуль не делает исходящих сетевых вызовов. Передача в суд, реестр или портал подачи является внешней по отношению к этому модулю.
Граница юридического соответствия
Заголовок раздела «Граница юридического соответствия»NextPDF подготавливает форматы для электронной подачи в суды / государственные органы согласно профилю юрисдикции. Он не гарантирует, что документ будет принят каким-либо судом, реестром, трибуналом или порталом подачи, и не предоставляет юридических консультаций. Правила подачи, принимаемые форматы, лимиты размера, требования к подписи и процедурные сроки устанавливаются соответствующим органом, различаются по юрисдикциям и меняются. Проверка и соблюдение этих правил — это ответственность подающего. Обращайтесь к юристам и к актуальным указаниям реестра-получателя.
См. также
Заголовок раздела «См. также»- Справочник по электронной подаче документов — полная поверхность публичного API этого модуля.
- Invoice — генерация структурированных счетов.
- Обзор Enterprise
- Матрица возможностей Core, Pro и Enterprise