Pro edição
Print Job — Referência Profunda
Visão geral
Seção intitulada “Visão geral”XjdfJobTicket constrói um job ticket XJDF 2.1 (XML JDF 2.0) para fluxos de trabalho de impressão de produção. O construtor fluente registra metadados do job, mídia, intenção de cor, operações de acabamento, prioridade e contagem de cópias. toXml então serializa um documento XML no namespace CIP4. O módulo produz apenas um ticket. Ele não envia o ticket a um controlador de impressora ou dispositivo.
Disponibilidade & licenciamento
Seção intitulada “Disponibilidade & licenciamento”Esta capacidade vem no NextPDF Pro (nextpdf/pro) e ativa com um envelope de licença de nível Pro. Uma implantação sem esse direito não carrega as classes da capacidade. Compare edições e obtenha uma licença.
Nenhum sinalizador de licença por recurso se aplica. Esta é uma capacidade da edição Pro.
Superfície da API pública
Seção intitulada “Superfície da API pública”composer require nextpdf/pro:^3Ponto de entrada — o construtor fluente:
final class XjdfJobTicket{ public function __construct(); public function setJobId(string $id): self; public function setJobName(string $name): self; public function setPriority(JobPriority $priority): self; public function setMedia(MediaSpec $media): self; public function setColor(ColorSpec $color): self; public function setFinishing(FinishingSpec $finishing): self; public function setCopies(int $copies): self; public function toXml(): string;}Especificação de mídia — objeto de valor imutável:
final readonly class MediaSpec{ public function __construct( public string $mediaType = 'Paper', public float $widthMm = 210.0, public float $heightMm = 297.0, public int $weight = 80, public string $coating = 'None', public string $color = 'White', ); public function isStandard(): bool; public function toXjdfElement(): string;}Intenção de cor — objeto de valor imutável:
final readonly class ColorSpec{ public function __construct( public bool $useCmyk = true, public bool $useSpotColors = false, public array $spotColorNames = [], public string $renderingIntent = 'RelativeColorimetric', ); public function colorCount(): int;}Intenção de acabamento — objeto de valor imutável:
final readonly class FinishingSpec{ public function __construct( public bool $fold = false, public bool $staple = false, public bool $punch = false, public bool $trim = false, public string $binding = 'None', );}Prioridade — enum baseado em string:
enum JobPriority: string{ case Idle = 'Idle'; case Low = 'Low'; case Normal = 'Normal'; case High = 'High'; case Rush = 'Rush';
public function numericValue(): int;}| Símbolo | Parâmetros | Comportamento padrão | Retorna | Lança ou falha com | Notas |
|---|---|---|---|---|---|
XjdfJobTicket::__construct | nenhum | Prioridade inicializada em JobPriority::Normal; cópias em 1. | instância | — | Raiz do construtor fluente. |
XjdfJobTicket::setJobId | string $id | Registra o identificador do job. | self | — | Valor vazio é permitido; veja toXml. |
XjdfJobTicket::setJobName | string $name | Registra o nome legível do job. | self | — | Emitido como um GeneralID quando não vazio. |
XjdfJobTicket::setPriority | JobPriority $priority | Sobrescreve a prioridade padrão Normal. | self | — | — |
XjdfJobTicket::setMedia | MediaSpec $media | Anexa um recurso de mídia. | self | — | Opcional; omitido quando não definido. |
XjdfJobTicket::setColor | ColorSpec $color | Anexa um recurso de intenção de cor. | self | — | Opcional; omitido quando não definido. |
XjdfJobTicket::setFinishing | FinishingSpec $finishing | Anexa recursos de acabamento. | self | — | Opcional; omitido quando não definido. |
XjdfJobTicket::setCopies | int $copies | Define a contagem de cópias de saída. | self | InvalidArgumentException quando $copies < 1 | O padrão é 1. |
XjdfJobTicket::toXml | nenhum | Serializa o documento XJDF 2.1. | string | — | Gera um ID de job aleatório XJDF_<hex> quando nenhum foi definido. |
MediaSpec::__construct | string $mediaType, float $widthMm, float $heightMm, int $weight, string $coating, string $color | Padrão de papel branco A4 a 80 g/m². | instância | — | Todos os parâmetros são opcionais. |
MediaSpec::isStandard | nenhum | Corresponde a A4, US Letter ou A3 dentro de 0,5 mm. | bool | — | Retrato ou paisagem. |
MediaSpec::toXjdfElement | nenhum | Emite um elemento <Media>; converte milímetros em pontos. | string | — | Omite revestimento e cor em seus valores padrão. |
ColorSpec::__construct | bool $useCmyk, bool $useSpotColors, list<string> $spotColorNames, string $renderingIntent | Padrão CMYK, intenção colorimétrica relativa. | instância | — | — |
ColorSpec::colorCount | nenhum | Retorna 4 para CMYK mais uma por cor spot. | int | — | — |
FinishingSpec::__construct | bool $fold, bool $staple, bool $punch, bool $trim, string $binding | Padrão sem acabamento; encadernação None. | instância | — | — |
JobPriority | casos de enum Idle, Low, Normal, High, Rush | — | enum | — | Baseado em string. |
JobPriority::numericValue | nenhum | Mapeia o caso para 0, 25, 50, 75 ou 100. | int | — | O mais alto é Rush (100). |
Contrato de comportamento
Seção intitulada “Contrato de comportamento”XjdfJobTicketé um construtor fluente. Cada setter retornaselfpara encadeamento.toXmlserializa um documento XJDF 2.1 simplificado sob o namespace CIP4http://www.CIP4.org/JDFSchema_2_0, comTypes="ConventionalPrinting".- Quando nenhum ID de job foi definido,
toXmlsubstitui por um identificador aleatórioXJDF_em vez de falhar. - A prioridade é escrita tanto como um
Commentquanto como um atributo numéricoNodeInfo. As cópias são escritas como uma quantidade de saídaComponent. - Recursos de mídia, cor e acabamento aparecem apenas quando suas especificações foram definidas.
- Todos os valores de atributo passam por escape XML antes da serialização.
- O módulo produz o documento de ticket. Ele não renderiza um fluxo de impressão nem envia o ticket a um dispositivo.
Casos extremos & modos de falha
Seção intitulada “Casos extremos & modos de falha”setCopiescom um valor abaixo de 1 lançaInvalidArgumentException. Esta é a única exceção que o módulo levanta.- Um ID de job vazio ou não definido não é um erro.
toXmlsubstitui por um identificador aleatórioXJDF_<hex>no momento da serialização. - As dimensões de mídia são em milímetros.
toXjdfElementconverte-as em pontos PDF usando o fator 72 / 25.4. MediaSpec::isStandardaplica uma tolerância de 0,5 mm e aceita orientação retrato ou paisagem.MediaSpec::toXjdfElementomiteFrontCoatingsquando o revestimento éNoneeMediaColorNamequando a cor éWhite.- O módulo não realiza operações criptográficas. O modo FIPS não altera seu comportamento.
Conformidade
Seção intitulada “Conformidade”O NextPDF Pro emite um subconjunto simplificado do XJDF 2.1. Isso é alinhamento de capacidade, não certificação. O NextPDF não possui nenhuma certificação CIP4.
| Comportamento | Referência | Status |
|---|---|---|
| Estrutura de job-ticket XJDF 2.1 | XJDF 2.1 (CIP4) | Alinhado — subconjunto simplificado |
Notas de desenvolvimento
Seção intitulada “Notas de desenvolvimento”- Raiz e namespace: um elemento
<XJDF>sobhttp://www.CIP4.org/JDFSchema_2_0, comTypes="ConventionalPrinting". - O serializador de cor emite
NumColorseColorsUsed.ColorSpec::renderingIntenté retido no objeto de valor, mas não é escrito na saída simplificada. - O acabamento mapeia booleanos para operações XJDF: fold para
Folding, staple paraStitching, punch paraHoleMakinge trim paraTrimming. Uma encadernação não-Noneemite umBindingIntent. - Os valores passam por escape XML, sem outra validação. Sanitize nomes e identificadores de job de origem externa antes de construir.
Limite de publicação
Seção intitulada “Limite de publicação”Esta página documenta apenas o comportamento observável externamente e a superfície da API pública suportada. Caminhos de namespace internos, classes auxiliares, tabelas de mecanismos, nomes de arquivos de runbook e prefixos de ticket estão fora de escopo.