Pro 版本
法律
NextPDF Pro 會依你的設定,對文件頁面套用循序的 Bates 編號。它會產生自包含的 PDF 內容串流片段,並支援可設定的前綴、後綴、補零、位置,以及一個可選的可切換內容圖層。
供應與授權
標題為「供應與授權」的區段此能力隨 NextPDF Pro(nextpdf/pro)出貨,並在 Pro 層級授權封套下啟用。未具備該授權的部署不會載入此能力的類別。比較各版本並取得授權。
composer require nextpdf/pro:^3概念總覽
標題為「概念總覽」的區段Bates 編號會在每一頁上蓋印一個循序識別碼,常用於在文件製作流程中追蹤頁面。NextPDF Pro 提供:
BatesNumberConfig— 一個不可變的組態值物件。你可以設定前綴(例如CASE-2024-)、後綴、起始號碼、補零寬度、字型家族與大小、不透明度、位置、邊緣內縮,以及是否要將標記放在可選內容圖層上。BatesNumberer— 引擎。給定頁數與每頁尺寸,它會為每頁回傳一個自包含的內容串流片段。每個片段都帶有自己的q/Q儲存/還原,因此它會附加到既有頁面的內容上,而不會干擾其他圖形。BatesPosition— 一個列舉六個預定義角落位置的 enum,每個位置都帶有可設定的頁緣內縮。該 enum 會在 PDF 原生空間(原點位於左下角)中計算座標。
可選內容圖層讓檢視器能切換顯示或隱藏 Bates 標記,從而讓底層頁面內容維持未經修改。
NextPDF Pro 會完全依你的設定套用 Bates 編號。編號方案、留存,以及任何證據處理,都是你與你法務團隊的責任。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長度不一致時會快速失敗。 - 所設定的字型家族必須存在於字型註冊表中。
- 不透明度與圖層切換取決於使用該文件的檢視器是否支援可選內容。
產生作業與頁數成線性關係。每個片段都很小且彼此獨立。
安全注意事項
標題為「安全注意事項」的區段Bates 標記屬於疊加內容。它們不會遮蔽、加密,或以其他方式更動底層頁面資料。如需遮蔽或存取控制,請使用 Security 模組。
一致性
標題為「一致性」的區段| 行為 | 參考 | 狀態 |
|---|---|---|
| Optional content groups(可切換圖層) | ISO 32000-2 §8.11 | 已對齊(改寫) |
此表記錄 NextPDF Pro 所依循建構的規範。它不是法律效力或證據充分性的陳述。
行為合約
標題為「行為合約」的區段BatesNumberConfig是一個不可變的值物件,用於前綴、後綴、起始號碼、補零寬度、字型家族與大小、不透明度、位置、邊緣內縮,以及可選內容圖層的切換。BatesNumberer會為每頁回傳一個自包含的內容串流片段,每個片段都帶有自己的q/Q儲存/還原,因此它會附加而不干擾其他頁面圖形。片段數量會與頁數相符;pageSizes長度不一致時會快速失敗。BatesPosition提供六個在 PDF 原生空間(原點位於左下角)中計算、帶有可設定頁緣內縮的預定義角落位置。- Bates 標記屬於疊加內容。它們不會遮蔽、加密或更動底層頁面資料。
- 此模組會完全依設定套用 Bates 編號。它不主張一份已編號的文件可被法庭採納、具法律效力,或足以滿足任何司法管轄區的舉證揭示規則。
Enterprise 邊界註記
標題為「Enterprise 邊界註記」的區段Enterprise 不會改變 Legal 的行為。Enterprise 加入的是另行記載的更高階合規與簽章功能;Bates 編號並不需要它們。
Core 回退/替代方案
標題為「Core 回退/替代方案」的區段可設定的 Bates 編號沒有 Core 對應功能。這是 Pro 新增的功能。
發佈邊界
標題為「發佈邊界」的區段本頁僅描述外部可觀察的行為,以及受支援的公開 API 介面。內部命名空間路徑、輔助類別、機制表格、runbook 檔名與工單前綴皆不在範圍內。
另請參閱
標題為「另請參閱」的區段- Merge — 在編號前組裝製作集合。
- Security — 遮蔽與存取控制。
- Legal — 深入參考 — 完整 API 合約與行為細節。