Pular para o conteúdo

Página de conformidade: o que o NextPDF produz e quem decide a conformidade

Declaração de limite. O suporte a um perfil não é conformidade; um validador independente faz a determinação da conformidade.

Esta página lista os perfis padrão que o NextPDF Core tem como alvo. Todas as páginas desta seção seguem uma regra definida pelas normas: a biblioteca produz uma saída destinada a estar em conformidade com um perfil, e um validador independente decide se um determinado arquivo Portable Document Format (PDF) realmente está em conformidade. Esse validador pode ser o veraPDF, um verificador de PDF/UA, um validador Schematron de fatura eletrônica ou a autoridade receptora. Para PDF/A, a ISO 19005-4 §6.7.3 deixa esse limite explícito: os marcadores pdfaid:part/pdfaid:rev identificam a intenção do produtor; eles não decidem a conformidade. A decisão é tomada sob a cláusula de conformidade da norma, por um processo externo à biblioteca produtora.

O NextPDF não declara conformidade. Ele emite os artefatos estruturais que um perfil exige. Quando um perfil é restrito, o NextPDF falha rapidamente no limite da API, de modo que uma capacidade ausente apareça como um erro claro, e não como um arquivo silenciosamente fora de conformidade.

Terminal window
composer require nextpdf/core:^3

Alguns dos perfis abaixo exigem o pacote Premium nextpdf/pro; cada página correspondente indica esse requisito. O Core inclui o discriminador de conformidade (NextPDF\Conformance\ConformanceMode) e os validadores de fluxo de bytes em NextPDF\Compliance. O fluxo de geração de OutputIntent / International Color Consortium (ICC) / Extensible Metadata Platform (XMP) para perfis de arquivamento é fornecido em nextpdf/pro.

O NextPDF direciona um documento para um contrato de conformidade por meio de um único discriminador tipado, NextPDF\Conformance\ConformanceMode. O enum é a fonte da verdade para o contrato ISO que o escritor deve respeitar. Ele inclui casos para Plain, PdfUa1, PdfUa2, PdfA2, PdfA3/PdfA3b/PdfA3u e PdfA4/PdfA4e/PdfA4f. O escritor lê o modo e emite a estrutura exigida; ele nunca define um sinalizador que diga que o arquivo está em conformidade.

Três limites se aplicam a todas as páginas desta seção:

  • Suporte ≠ conformidade. Emitir os metadados que um perfil exige é uma capacidade, não um veredicto.
  • Validação ≠ certificação. Um relatório de validador sem erros é uma evidência, não um certificado.
  • Um perfil testado ≠ certificação. Os testes do NextPDF afirmam que os bytes emitidos correspondem às cláusulas citadas; eles não são uma auditoria credenciada.

Os pontos de entrada de conformidade em NextPDF\Core\Document são estes:

MétodoEfeitoNível
enablePdfA(?object $version = null)Direciona o documento para um caso ConformanceMode de PDF/A (padrão PdfA4); agenda OutputIntent + ICC + XMP em save(). Lança InvalidConfigException se nextpdf/pro estiver ausente.API do Core, motor Premium
enableTaggedPdf(string $lang = 'en', ?ConformancePolicy $policy = null)Define ConformanceMode::PdfUa2, conecta o emissor de conteúdo marcado e valida a tag de idioma em relação à política.Core
<?php
declare(strict_types=1);
require_once __DIR__ . '/vendor/autoload.php';
use NextPDF\Core\Document;
$doc = Document::createStandalone();
$doc->enableTaggedPdf('en'); // ConformanceMode::PdfUa2
$doc->setTitle('Conformance index sample');
$doc->writeHtml('<h1>Hello</h1><p>Tagged content.</p>');
$doc->save(getenv('NEXTPDF_COOKBOOK_OUTPUT') ?: __DIR__ . '/out.pdf');

Não se aplica. As páginas de cada perfil fornecem exemplos de produção executáveis; este índice é uma página de roteamento.

  • O índice não declara nenhum comportamento. As páginas de cada perfil contêm as tabelas de afirmações verificadas. Esta página declara apenas a regra que rege a seção.
  • Um nome de perfil nos metadados é uma afirmação, não uma prova. Um leitor que encontra pdfaid:part=4 vê a intenção do produtor, não a prova de que o arquivo está em conformidade.
  • O controle de capacidades falha rápido. Uma instalação apenas com o Core que chama um caminho de arquivamento Premium recebe InvalidConfigException com uma mensagem de atualização, nunca um arquivo silenciosamente fora de conformidade.

Não se aplica ao índice. As páginas de cada perfil declaram seus próprios orçamentos.

Os perfis de conformidade restringem a estrutura, não a postura diante de ameaças. O PDF/A-4 proíbe criptografia; o PDF/UA-2 exige estrutura acessível. Nenhum dos dois é um controle de segurança. Consulte a central de confiança para o modelo de segurança do motor.

AfirmaçãoNormaCláusulareference_id
Os marcadores pdfaid do produtor identificam a intenção; a cláusula de conformidade da norma rege a determinação feita por um validador ou processo, não pela biblioteca.ISO 19005-4§6.7.3
A conformidade com o PDF/UA-2 é avaliada em relação aos requisitos de conformidade da norma, não afirmada pelo software produtor.ISO 14289-2§7.2.2
Um arquivo PDF 2.0 em conformidade deve satisfazer os requisitos definidos de estrutura de arquivo e de trailer; a biblioteca os emite, mas não julga o resultado.ISO 32000-2§7.5.5

As citações são ponteiros de clause-id + reference_id para o corpus de verificação. Nenhum texto de normas é reproduzido.