跳转到内容
getnextpdf.com

Enterprise 版本

Document E-Filing

NextPDF Enterprise 按一个司法管辖区配置文件所配置的方式,把一份 PDF 优化为适用于电子法院 / 政府申报的投递工件,并在超过某个配置文件的大小限制时,把它拆分为大小受限的段。它按所配置的方式为申报准备格式;它不保证任何文档会被某个法院或登记处接受。

本能力随 NextPDF Enterprisenextpdf/enterprise)发行,并通过一个 Enterprise 层级的授权信封激活。没有该授权项的部署不会加载本能力的类。比较各版本并获取授权

Terminal window
composer require nextpdf/enterprise:^3

EFilingOptimizer 对一个输入 PDF 运行一条固定的管线:

  1. 清洗。 通过内容解除与重构引擎移除活动内容(JavaScript 与动作)。
  2. 线性化。 文档被线性化以实现快速网页查看。
  3. 大小检查与拆分。 如果结果超过配置文件的大小限制,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 当作敌对的;清洗步骤是一项缓解措施,而非对下游系统安全性的保证。

被申报的文档经常包含个人与案件数据。处理在进程内且在本地进行;本模块不发起任何出站网络调用。请对各段与对原文件施加你自己的留存控制。

警告与优化记录描述的是管线动作,而非文档内容。请避免在共享接收端记录来自你周围代码的文件路径或案件标识符。

行为引用状态
关联文件关系语义ISO 19005-3:2012 §6.7.8在载体适用之处遵循
内嵌文件载体要求ISO 19005-4:2020 Annex A在载体适用之处遵循

本表记录周围 PDF/A 处理所对照构建的规范。它不是被任何法院或登记处接受的声明。

本模块不执行任何密码学运算。

携带活动内容的不受信任输入 PDF 是主要输入。缓解:在线性化与投递之前进行内容解除与重构;投递工件被排除在重新签名与重新归档之外,以保护证据完整性。

  • EFilingOptimizer 运行一条固定的管线:内容解除与重构、线性化,然后是一次大小检查,并在超过某个配置文件上限时进行二分查找拆分。
  • 一份已经低于配置文件限制的文档会返回单独一个大小不变的段。
  • 一个超过限制的单页会作为一个超限段返回并附带一条警告;它无法被进一步拆分。
  • 一个电子申报工件对于传输而言是最终的,且绝不能重新进入签名或归档管线;重新处理会破坏哈希链与证据完整性。

本页面仅记录外部可观察的行为与受支持的公开 API 接口。内部命名空间路径、辅助类、机制表、运维手册文件名,以及工单前缀,均不在范围之内。

NextPDF Core 没有按司法管辖区配置文件的电子申报优化器、没有 CDR 清洗阶段,也没有大小感知拆分器。一个仅 Core 的部署必须自行构建任何申报准备管线。

NextPDF Pro 不提供按司法管辖区配置文件的电子申报优化器、内置的 PACER / EU e-Justice / Taiwan Judicial Yuan 配置文件、CDR 清洗阶段,或大小感知拆分器。在仅 Pro 的部署中请求由配置文件驱动的电子申报优化的配置,没有可满足它的 Enterprise 组件。Enterprise 接口请参见 Enterprise 总览

内部机制细节留在源代码仓库的内部文档中,不在本手册范围之内。

内置配置文件上限作为一种便利把常见的已发布约束编码进来,而非来自各门户的实时数据源;在申报之前对照目的地登记处的现行规则确认它们,是申报者的责任。处理在进程内且在本地进行;本模块不发起任何出站网络调用。到法院、登记处或申报门户的传输不在本模块范围之内。

NextPDF 按一个司法管辖区配置文件所配置的方式为电子法院 / 政府申报准备格式。它保证一份文档会被任何法院、登记处、仲裁机构或申报门户接受,也不提供法律建议。申报规则、被接受的格式、大小限制、签名要求,以及程序性截止日期,由相关主管机构设定,因司法管辖区而异,并会变化。核实并满足那些规则是申报者的责任。请咨询律师以及目的地登记处的现行指引。