Pular para o conteúdo
getnextpdf.com

Pro edição

Jurídico

O NextPDF Pro aplica numeração Bates sequencial às páginas de documentos conforme configurado. Ele gera fragmentos autocontidos de fluxo de conteúdo PDF com prefixo, sufixo, preenchimento e posição configuráveis, e uma camada de conteúdo opcional que pode ser alternada.

Esse recurso é disponibilizado no NextPDF Pro (nextpdf/pro) e é ativado com um envelope de licença de nível Pro. Uma implantação sem essa titularidade não carrega as classes do recurso. Compare as edições e obtenha uma licença.

Terminal window
composer require nextpdf/pro:^3

A numeração Bates carimba um identificador sequencial em cada página, comumente usada para rastrear páginas ao longo de um processo de produção de documentos. O NextPDF Pro fornece:

  • BatesNumberConfig — um objeto de valor de configuração imutável. Você define o prefixo (por exemplo, CASE-2024-), o sufixo, o número inicial, a largura de preenchimento com zeros, a família e o tamanho da fonte, a opacidade, a posição, a margem em relação à borda e se as marcas devem ser colocadas em uma camada de conteúdo opcional.
  • BatesNumberer — o motor. Dada uma contagem de páginas e tamanhos por página, ele retorna um fragmento autocontido de fluxo de conteúdo por página. Cada fragmento carrega seu próprio salvar/restaurar q/Q, então ele é anexado ao conteúdo de uma página existente sem perturbar os demais gráficos.
  • BatesPosition — um enum com seis posições de canto predefinidas, cada uma com uma margem configurável em relação à borda da página. O enum calcula as coordenadas no espaço nativo do PDF (origem no canto inferior esquerdo).

A camada de conteúdo opcional permite que um visualizador alterne as marcas Bates entre ligada e desligada, o que mantém o conteúdo subjacente da página inalterado.

O NextPDF Pro aplica a numeração Bates exatamente como você a configura. O esquema de numeração, a retenção e qualquer tratamento probatório são responsabilidade sua e da sua equipe jurídica. O NextPDF Pro não afirma que um documento numerado é admissível em juízo, juridicamente válido ou suficiente para as regras de discovery de qualquer jurisdição. Consulte suas equipes jurídicas e de conformidade quanto aos requisitos procedimentais e probatórios.

A decisão fundamental é que o BatesNumberer emite um fragmento autocontido de fluxo de conteúdo por página, em vez de editar a página no lugar. Cada fragmento envolve seu desenho em seu próprio salvar/restaurar q/Q, opcionalmente dentro de uma camada de conteúdo marcado OCG BDC/EMC. Assim, o carimbo é anexado a uma página sem perturbar os gráficos que já existem ali, e os bytes subjacentes da página permanecem intactos. Essa postura não destrutiva torna as marcas reversíveis: um visualizador pode desligar a camada e recuperar a página original. Ela também mantém cada página independente. A numeração permanece linear em relação à contagem de páginas, e o carimbo de uma página não pode corromper o de outra.

Contexto de design: Atualizações incrementais e por que elas importam.

ClasseResponsabilidade
BatesNumberConfigConfigurações imutáveis de aparência, numeração e posição.
BatesNumbererGera fragmentos de fluxo de conteúdo por página.
BatesPositionPosições de canto predefinidas com margem em relação à borda.
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);
  • O número de fragmentos retornados corresponde à contagem de páginas; um comprimento incompatível de pageSizes falha rapidamente.
  • A família de fonte configurada deve estar disponível no registro de fontes.
  • A opacidade e a alternância de camada dependem do suporte a conteúdo opcional no visualizador consumidor.

A geração é linear em relação à contagem de páginas. Cada fragmento é pequeno e independente.

As marcas Bates são conteúdo de sobreposição. Elas não tarjam, criptografam nem alteram de outra forma os dados subjacentes da página. Use o módulo Security para tarjamento ou controle de acesso.

ComportamentoReferênciaStatus
Grupos de conteúdo opcional (camada alternável)ISO 32000-2 §8.11Alinhado (parafraseado)

Esta tabela registra a especificação contra a qual o NextPDF Pro é construído. Ela não é uma declaração de validade jurídica ou de suficiência probatória.

  • BatesNumberConfig é um objeto de valor imutável para prefixo, sufixo, número inicial, largura de preenchimento com zeros, família e tamanho da fonte, opacidade, posição, margem em relação à borda e a alternância da camada de conteúdo opcional.
  • BatesNumberer retorna um fragmento autocontido de fluxo de conteúdo por página, cada um com seu próprio salvar/restaurar q/Q, de modo que ele é anexado sem perturbar os demais gráficos da página. O número de fragmentos corresponde à contagem de páginas; um comprimento incompatível de pageSizes falha rapidamente.
  • BatesPosition fornece seis posições de canto predefinidas calculadas no espaço nativo do PDF (origem no canto inferior esquerdo) com uma margem configurável em relação à borda.
  • As marcas Bates são conteúdo de sobreposição. Elas não tarjam, criptografam nem alteram os dados subjacentes da página.
  • O módulo aplica a numeração Bates exatamente como configurada. Ele não afirma que um documento numerado é admissível em juízo, juridicamente válido ou suficiente para as regras de discovery de qualquer jurisdição.

O Enterprise não altera o comportamento do Legal. O Enterprise acrescenta recursos de conformidade e de assinatura de nível superior documentados separadamente; eles não são necessários para a numeração Bates.

Não há equivalente no Core para a numeração Bates configurável. Esta é uma adição do Pro.

Esta página documenta apenas o comportamento observável externamente e a superfície pública de API suportada. Caminhos de namespace internos, classes auxiliares, tabelas de mecanismos, nomes de arquivos de runbook e prefixos de tickets estão fora do escopo.