Ga naar inhoud
getnextpdf.com

Pro editie

Print Job — Diepe referentie

XjdfJobTicket bouwt een XJDF 2.1 (XML JDF 2.0) job-ticket voor productieprintworkflows. De fluent builder legt jobmetadata, media, kleurintentie, afwerkingsbewerkingen, prioriteit en aantal exemplaren vast. toXml serialiseert vervolgens een XML-document in de CIP4-namespace. De module produceert alleen een ticket. Het verstuurt het ticket niet naar een perscontroller of apparaat.

Deze functionaliteit wordt geleverd in NextPDF Pro (nextpdf/pro) en activeert met een licentie-envelop van het Pro-niveau. Een deployment zonder die rechten laadt de klassen van de functionaliteit niet. Vergelijk edities en vraag een licentie aan.

Er geldt geen licentievlag per feature. Dit is een Pro-editie-functionaliteit.

Terminal window
composer require nextpdf/pro:^3

Instappunt — de fluent builder:

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;
}

Mediaspecificatie — onveranderlijk value object:

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;
}

Kleurintentie — onveranderlijk value object:

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;
}

Afwerkingsintentie — onveranderlijk value object:

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',
);
}

Prioriteit — string-backed enum:

enum JobPriority: string
{
case Idle = 'Idle';
case Low = 'Low';
case Normal = 'Normal';
case High = 'High';
case Rush = 'Rush';
public function numericValue(): int;
}
SymboolParametersStandaardgedragRetourneertWerpt of faalt metOpmerkingen
XjdfJobTicket::__constructgeenPrioriteit geïnitialiseerd op JobPriority::Normal; exemplaren op 1.instanceBasis van de fluent builder.
XjdfJobTicket::setJobIdstring $idLegt de job-identifier vast.selfLege waarde is toegestaan; zie toXml.
XjdfJobTicket::setJobNamestring $nameLegt de leesbare jobnaam vast.selfUitgevoerd als een GeneralID indien niet-leeg.
XjdfJobTicket::setPriorityJobPriority $priorityOverschrijft de standaardprioriteit Normal.self
XjdfJobTicket::setMediaMediaSpec $mediaKoppelt een media-resource.selfOptioneel; weggelaten indien niet gezet.
XjdfJobTicket::setColorColorSpec $colorKoppelt een kleurintentie-resource.selfOptioneel; weggelaten indien niet gezet.
XjdfJobTicket::setFinishingFinishingSpec $finishingKoppelt afwerkings-resources.selfOptioneel; weggelaten indien niet gezet.
XjdfJobTicket::setCopiesint $copiesStelt het aantal uitvoerexemplaren in.selfInvalidArgumentException wanneer $copies < 1Standaard is 1.
XjdfJobTicket::toXmlgeenSerialiseert het XJDF 2.1-document.stringGenereert een willekeurige XJDF_<hex> job-ID wanneer er geen is gezet.
MediaSpec::__constructstring $mediaType, float $widthMm, float $heightMm, int $weight, string $coating, string $colorStandaard A4 wit papier van 80 g/m².instanceAlle parameters optioneel.
MediaSpec::isStandardgeenKomt overeen met A4, US Letter of A3 binnen 0,5 mm.boolStaand of liggend.
MediaSpec::toXjdfElementgeenZendt een <Media>-element uit; converteert millimeters naar punten.stringLaat coating en kleur weg bij hun standaardwaarden.
ColorSpec::__constructbool $useCmyk, bool $useSpotColors, list<string> $spotColorNames, string $renderingIntentStandaard CMYK, relatief-colorimetrische intentie.instance
ColorSpec::colorCountgeenRetourneert 4 voor CMYK plus één per steunkleur.int
FinishingSpec::__constructbool $fold, bool $staple, bool $punch, bool $trim, string $bindingStandaard geen afwerking; binding None.instance
JobPriorityenum-cases Idle, Low, Normal, High, RushenumString-backed.
JobPriority::numericValuegeenMapt de case naar 0, 25, 50, 75 of 100.intHoogste is Rush (100).
  • XjdfJobTicket is een fluent builder. Elke setter retourneert self om te ketenen.
  • toXml serialiseert een vereenvoudigd XJDF 2.1-document onder de CIP4-namespace http://www.CIP4.org/JDFSchema_2_0, met Types="ConventionalPrinting".
  • Wanneer er geen job-ID is gezet, vervangt toXml dit door een willekeurige XJDF_-identifier in plaats van te falen.
  • Prioriteit wordt zowel als Comment als als numeriek NodeInfo-attribuut geschreven. Exemplaren worden geschreven als een Component-uitvoerhoeveelheid.
  • Media-, kleur- en afwerkings-resources verschijnen alleen wanneer hun specificaties zijn gezet.
  • Alle attribuutwaarden worden XML-escaped vóór serialisatie.
  • De module produceert het ticketdocument. Het rendert geen printstream en verstuurt het ticket niet naar een apparaat.
  • setCopies met een waarde onder 1 werpt InvalidArgumentException. Dit is de enige exception die de module opwerpt.
  • Een lege of niet-gezette job-ID is geen fout. toXml vervangt dit door een willekeurige XJDF_<hex>-identifier op het moment van serialisatie.
  • Mediadimensies zijn in millimeters. toXjdfElement converteert ze naar PDF-punten met de factor 72 / 25.4.
  • MediaSpec::isStandard past een tolerantie van 0,5 mm toe en accepteert staande of liggende oriëntatie.
  • MediaSpec::toXjdfElement laat FrontCoatings weg wanneer coating None is en MediaColorName wanneer kleur White is.
  • De module voert geen cryptografische bewerkingen uit. De FIPS-modus verandert het gedrag niet.

NextPDF Pro zendt een vereenvoudigde XJDF 2.1-subset uit. Dit is afstemming van functionaliteit, geen certificering. NextPDF beschikt niet over een CIP4-certificering.

GedragReferentieStatus
XJDF 2.1 job-ticketstructuurXJDF 2.1 (CIP4)Afgestemd — vereenvoudigde subset
  • Root en namespace: een <XJDF>-element onder http://www.CIP4.org/JDFSchema_2_0, met Types="ConventionalPrinting".
  • De kleurserializer zendt NumColors en ColorsUsed uit. ColorSpec::renderingIntent blijft op het value object behouden maar wordt niet in de vereenvoudigde uitvoer geschreven.
  • Afwerking mapt booleans naar XJDF-bewerkingen: fold naar Folding, staple naar Stitching, punch naar HoleMaking en trim naar Trimming. Een binding anders dan None zendt een BindingIntent uit.
  • Waarden worden XML-escaped, verder niet gevalideerd. Saniteer extern afkomstige jobnamen en identifiers voordat je bouwt.

Deze pagina documenteert alleen extern waarneembaar gedrag en het ondersteunde publieke API-oppervlak. Interne namespace-paden, helper-klassen, mechanismetabellen, runbook-bestandsnamen en ticket-prefixes vallen buiten de scope.