Pro エディション
法務
NextPDF Pro は、構成に従ってドキュメントページに連番の Bates ナンバリングを付与します。構成可能な接頭辞、接尾辞、パディング、位置、および任意の切り替え可能なコンテンツレイヤーを備えた、自己完結型の PDF コンテンツストリームフラグメントを生成します。
提供状況とライセンス
「提供状況とライセンス」という見出しのセクションこの機能は NextPDF Pro(nextpdf/pro)に同梱され、Pro 層のライセンスエンベロープで有効化されます。そのエンタイトルメントを持たないデプロイでは、この機能のクラスは読み込まれません。エディションを比較してライセンスを取得する。
インストール
「インストール」という見出しのセクションcomposer require nextpdf/pro:^3概念の概要
「概念の概要」という見出しのセクションBates ナンバリングは各ページに連番の識別子をスタンプするもので、ドキュメント作成プロセスを通じてページを追跡するために一般的に使用されます。NextPDF Pro は次を提供します。
BatesNumberConfig— 不変の構成値オブジェクト。接頭辞(例:CASE-2024-)、接尾辞、開始番号、ゼロパディングの桁数、フォントファミリーとサイズ、不透明度、位置、端からのインセット、そしてマークを任意のコンテンツレイヤーに配置するかどうかを設定します。BatesNumberer— エンジン。ページ数とページごとのサイズを与えると、ページごとに 1 つの自己完結型コンテンツストリームフラグメントを返します。各フラグメントは自身のq/Q保存・復元を持つため、他のグラフィックスを乱すことなく既存ページのコンテンツに追記されます。BatesPosition— 6 つの事前定義された角の位置の列挙型で、それぞれにページ端からの構成可能なインセットがあります。この列挙型は PDF ネイティブ空間(原点は左下)で座標を計算します。
任意のコンテンツレイヤーにより、ビューアーは Bates マークの表示・非表示を切り替えられるため、基となるページコンテンツは変更されないまま保たれます。
NextPDF Pro は、構成したとおりに正確に Bates ナンバリングを付与します。ナンバリング体系、保持、および証拠としての取り扱いは、あなたとあなたの法務チームの責任です。NextPDF Pro は、ナンバリングされたドキュメントが法廷で許容される、法的に有効である、またはいずれかの管轄区域のディスカバリー規則に対して十分であると主張するものではありません。手続き上および証拠上の要件については、法務およびコンプライアンスのチームにご相談ください。
この仕組みである理由
「この仕組みである理由」という見出しのセクション核心となる設計判断は、BatesNumberer がページをその場で編集するのではなく、ページごとに 1 つの自己完結型コンテンツストリームフラグメントを出力する点です。各フラグメントは自身の描画を独自の 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の長さが一致しない場合は早期に失敗します。 - 構成したフォントファミリーがフォントレジストリで利用可能でなければなりません。
- 不透明度とレイヤー切り替えは、利用するビューアーの任意コンテンツサポートに依存します。
パフォーマンス
「パフォーマンス」という見出しのセクション生成はページ数に対して線形です。各フラグメントは小さく独立しています。
セキュリティに関する注意
「セキュリティに関する注意」という見出しのセクションBates マークはオーバーレイコンテンツです。基となるページデータを墨消し、暗号化、またはその他の方法で変更することはありません。墨消しやアクセス制御には Security モジュールを使用してください。
| 振る舞い | 参照 | ステータス |
|---|---|---|
| 任意コンテンツグループ(切り替え可能なレイヤー) | ISO 32000-2 §8.11 | 準拠(パラフレーズ) |
この表は、NextPDF Pro が準拠して構築されている仕様を記録したものです。法的有効性や証拠としての十分性を述べたものではありません。
振る舞いの契約
「振る舞いの契約」という見出しのセクションBatesNumberConfigは、接頭辞、接尾辞、開始番号、ゼロパディングの桁数、フォントファミリーとサイズ、不透明度、位置、端からのインセット、および任意コンテンツレイヤーの切り替えを保持する不変の値オブジェクトです。BatesNumbererは、ページごとに 1 つの自己完結型コンテンツストリームフラグメントを返します。各フラグメントは自身のq/Q保存・復元を持つため、他のページグラフィックスを乱すことなく追記されます。フラグメントの数はページ数と一致します。pageSizesの長さが一致しない場合は早期に失敗します。BatesPositionは、構成可能な端からのインセットを伴い、PDF ネイティブ空間(原点は左下)で計算される 6 つの事前定義された角の位置を提供します。- Bates マークはオーバーレイコンテンツです。基となるページデータを墨消し、暗号化、または変更することはありません。
- このモジュールは構成したとおりに正確に Bates ナンバリングを付与します。ナンバリングされたドキュメントが法廷で許容される、法的に有効である、またはいずれかの管轄区域のディスカバリー規則に対して十分であると主張するものではありません。
Enterprise の境界に関する注記
「Enterprise の境界に関する注記」という見出しのセクションEnterprise は Legal の振る舞いを変更しません。Enterprise は、別途文書化された上位層のコンプライアンスおよび署名機能を追加します。それらは Bates ナンバリングには必要ありません。
Core のフォールバック/代替手段
「Core のフォールバック/代替手段」という見出しのセクション構成可能な Bates ナンバリングに相当する Core の機能はありません。これは Pro の追加機能です。
公開範囲の境界
「公開範囲の境界」という見出しのセクションこのページは、外部から観測可能な振る舞いと、サポートされる公開 API サーフェスのみを記述しています。内部の名前空間パス、ヘルパークラス、メカニズムの表、ランブックのファイル名、およびチケット接頭辞は対象外です。
- Merge — ナンバリング前に作成セットを組み立てます。
- Security — 墨消しとアクセス制御。
- Legal — Deep Reference — 完全な API 契約と振る舞いの詳細。