Pro edizione
Legale
In sintesi
Sezione intitolata “In sintesi”NextPDF Pro applica alle pagine dei documenti una numerazione Bates sequenziale secondo quanto configurato. Genera frammenti autonomi di content stream PDF con prefisso, suffisso, padding, posizione configurabili e un livello di contenuto opzionale attivabile.
Disponibilità e licenza
Sezione intitolata “Disponibilità e licenza”Questa funzionalità è distribuita in NextPDF Pro (nextpdf/pro) e si attiva con un envelope di licenza di tier Pro. Un deployment privo di tale entitlement non carica le classi della funzionalità. Confronta le edizioni e ottieni una licenza.
Installazione
Sezione intitolata “Installazione”composer require nextpdf/pro:^3Panoramica concettuale
Sezione intitolata “Panoramica concettuale”La numerazione Bates imprime un identificatore sequenziale su ciascuna pagina, comunemente usato per tracciare le pagine lungo un processo di produzione documentale. NextPDF Pro offre:
BatesNumberConfig— un value object di configurazione immutabile. Si impostano il prefisso (ad esempioCASE-2024-), il suffisso, il numero iniziale, l’ampiezza del riempimento con zeri, la famiglia e la dimensione del font, l’opacità, la posizione, il margine dal bordo e se collocare i contrassegni su un livello di contenuto opzionale.BatesNumberer— il motore. Dato un numero di pagine e le dimensioni per pagina, restituisce un frammento autonomo di content stream per pagina. Ogni frammento porta con sé i propriq/Qdi save/restore, così da aggiungersi al contenuto di una pagina esistente senza alterare le altre grafiche.BatesPosition— un enum di sei posizioni d’angolo predefinite, ciascuna con un margine configurabile dal bordo della pagina. L’enum calcola le coordinate nello spazio nativo del PDF (origine in basso a sinistra).
Il livello di contenuto opzionale consente a un visualizzatore di attivare o disattivare i contrassegni Bates, mantenendo invariato il contenuto sottostante della pagina.
NextPDF Pro applica la numerazione Bates esattamente come la si configura. Lo schema di numerazione, la conservazione e qualsiasi gestione probatoria sono responsabilità dell’utente e del suo team legale. NextPDF Pro non asserisce che un documento numerato sia ammissibile in giudizio, giuridicamente valido o sufficiente rispetto alle regole di discovery di alcuna giurisdizione. Rivolgersi ai propri team legali e di conformità per i requisiti procedurali e probatori.
Perché funziona così
Sezione intitolata “Perché funziona così”La decisione portante è che BatesNumberer emette un frammento autonomo di content stream per pagina anziché modificare la pagina sul posto. Ogni frammento racchiude il proprio disegno nei propri q/Q di save e restore, opzionalmente all’interno di un livello di contenuto marcato OCG BDC/EMC. Così il contrassegno si aggiunge a una pagina senza alterare le grafiche già presenti, e i byte sottostanti della pagina restano intatti. Questa impostazione non distruttiva rende i contrassegni reversibili: un visualizzatore può disattivare il livello e recuperare la pagina originale. Mantiene inoltre indipendente ciascuna pagina. La numerazione resta lineare rispetto al numero di pagine, e il contrassegno di una pagina non può corrompere quello di un’altra.
Contesto progettuale: Aggiornamenti incrementali e perché sono importanti.
Superficie API
Sezione intitolata “Superficie API”| Classe | Responsabilità |
|---|---|
BatesNumberConfig | Impostazioni immutabili di aspetto, numerazione e posizione. |
BatesNumberer | Genera frammenti di content stream per ciascuna pagina. |
BatesPosition | Posizioni d’angolo predefinite con margine dal bordo. |
Esempio di codice — Avvio rapido
Sezione intitolata “Esempio di codice — Avvio rapido”use NextPDF\Pro\Legal\BatesNumberer;
$streams = BatesNumberer::generate( pageCount: 50, pageSizes: $pageSizes, prefix: 'EX-',);Esempio di codice — Produzione
Sezione intitolata “Esempio di codice — Produzione”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);Casi limite e insidie
Sezione intitolata “Casi limite e insidie”- Il numero di frammenti restituiti corrisponde al numero di pagine; una lunghezza di
pageSizesnon coincidente fallisce immediatamente. - La famiglia di font configurata deve essere disponibile nel registro dei font.
- L’opacità e l’attivazione del livello dipendono dal supporto del contenuto opzionale nel visualizzatore che consuma il documento.
Prestazioni
Sezione intitolata “Prestazioni”La generazione è lineare rispetto al numero di pagine. Ogni frammento è piccolo e indipendente.
Note sulla sicurezza
Sezione intitolata “Note sulla sicurezza”I contrassegni Bates sono contenuto in sovrapposizione. Non oscurano, cifrano né alterano in altro modo i dati sottostanti della pagina. Per l’oscuramento o il controllo degli accessi, usare il modulo Security.
Conformità
Sezione intitolata “Conformità”| Comportamento | Riferimento | Stato |
|---|---|---|
| Optional content groups (livello attivabile) | ISO 32000-2 §8.11 | Allineato (parafrasato) |
Questa tabella registra la specifica rispetto a cui NextPDF Pro è realizzato. Non costituisce una dichiarazione di validità giuridica o di sufficienza probatoria.
Contratto di comportamento
Sezione intitolata “Contratto di comportamento”BatesNumberConfigè un value object immutabile per prefisso, suffisso, numero iniziale, ampiezza del riempimento con zeri, famiglia e dimensione del font, opacità, posizione, margine dal bordo e l’attivazione del livello di contenuto opzionale.BatesNumbererrestituisce un frammento autonomo di content stream per pagina, ciascuno con i propriq/Qdi save/restore, così da aggiungersi senza alterare le altre grafiche della pagina. Il numero di frammenti corrisponde al numero di pagine; una lunghezza dipageSizesnon coincidente fallisce immediatamente.BatesPositionoffre sei posizioni d’angolo predefinite calcolate nello spazio nativo del PDF (origine in basso a sinistra) con un margine configurabile dal bordo.- I contrassegni Bates sono contenuto in sovrapposizione. Non oscurano, cifrano né alterano i dati sottostanti della pagina.
- Il modulo applica la numerazione Bates esattamente come configurata. Non asserisce che un documento numerato sia ammissibile in giudizio, giuridicamente valido o sufficiente rispetto alle regole di discovery di alcuna giurisdizione.
Nota sul confine Enterprise
Sezione intitolata “Nota sul confine Enterprise”Enterprise non modifica il comportamento di Legal. Enterprise aggiunge funzionalità di compliance e firma di tier superiore documentate separatamente; non sono richieste per la numerazione Bates.
Fallback / alternativa di Core
Sezione intitolata “Fallback / alternativa di Core”Non esiste un equivalente in Core per la numerazione Bates configurabile. Questa è un’aggiunta di Pro.
Confine di pubblicazione
Sezione intitolata “Confine di pubblicazione”Questa pagina documenta esclusivamente il comportamento osservabile dall’esterno e la superficie API pubblica supportata. Percorsi di namespace interni, classi helper, tabelle di meccanismo, nomi di file di runbook e prefissi di ticket sono fuori ambito.
Vedere anche
Sezione intitolata “Vedere anche”- Merge — assemblare i set di produzione prima della numerazione.
- Security — oscuramento e controllo degli accessi.
- Legal — Riferimento approfondito — contratto API completo e dettagli di comportamento.