Przejdź do głównej zawartości
getnextpdf.com

Pro edycja

Print Job — szczegółowa dokumentacja referencyjna

XjdfJobTicket buduje zlecenie produkcyjne (job ticket) w formacie XJDF 2.1 (XML JDF 2.0) na potrzeby produkcyjnych procesów drukarskich. Płynny kreator (fluent builder) rejestruje metadane zlecenia, nośnik, intencję koloru, operacje wykończeniowe, priorytet oraz liczbę kopii. Następnie toXml serializuje dokument XML z przestrzenią nazw CIP4. Moduł tworzy wyłącznie zlecenie. Nie przesyła go do kontrolera maszyny drukującej ani do urządzenia.

Ta funkcja jest dostarczana w NextPDF Pro (nextpdf/pro) i aktywuje się wraz z kopertą licencyjną poziomu Pro. Wdrożenie bez tego uprawnienia nie ładuje klas tej funkcji. Porównaj edycje i uzyskaj licencję.

Nie obowiązuje żadna flaga licencji dla pojedynczej funkcji. Jest to funkcja edycji Pro.

Okno terminala
composer require nextpdf/pro:^3

Punkt wejścia — płynny kreator:

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

Specyfikacja nośnika — niemutowalny obiekt wartości:

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

Intencja koloru — niemutowalny obiekt wartości:

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

Intencja wykończenia — niemutowalny obiekt wartości:

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

Priorytet — enum oparty na stringu:

enum JobPriority: string
{
case Idle = 'Idle';
case Low = 'Low';
case Normal = 'Normal';
case High = 'High';
case Rush = 'Rush';
public function numericValue(): int;
}
SymbolParametryZachowanie domyślneZwracaZgłasza lub kończy się błędemUwagi
XjdfJobTicket::__constructbrakPriorytet inicjalizowany na JobPriority::Normal; liczba kopii na 1.instancjaKorzeń płynnego kreatora.
XjdfJobTicket::setJobIdstring $idRejestruje identyfikator zlecenia.selfPusta wartość jest dozwolona; zob. toXml.
XjdfJobTicket::setJobNamestring $nameRejestruje czytelną nazwę zlecenia.selfEmitowana jako GeneralID, gdy niepusta.
XjdfJobTicket::setPriorityJobPriority $priorityNadpisuje domyślny priorytet Normal.self
XjdfJobTicket::setMediaMediaSpec $mediaDołącza zasób nośnika.selfOpcjonalny; pomijany, gdy nieustawiony.
XjdfJobTicket::setColorColorSpec $colorDołącza zasób intencji koloru.selfOpcjonalny; pomijany, gdy nieustawiony.
XjdfJobTicket::setFinishingFinishingSpec $finishingDołącza zasoby wykończeniowe.selfOpcjonalny; pomijany, gdy nieustawiony.
XjdfJobTicket::setCopiesint $copiesUstawia wyjściową liczbę kopii.selfInvalidArgumentException, gdy $copies < 1Domyślnie 1.
XjdfJobTicket::toXmlbrakSerializuje dokument XJDF 2.1.stringGeneruje losowy identyfikator zlecenia XJDF_<hex>, gdy żaden nie został ustawiony.
MediaSpec::__constructstring $mediaType, float $widthMm, float $heightMm, int $weight, string $coating, string $colorDomyślnie biały papier A4 o gramaturze 80 g/m².instancjaWszystkie parametry opcjonalne.
MediaSpec::isStandardbrakDopasowuje A4, US Letter lub A3 z tolerancją 0,5 mm.boolPionowo lub poziomo.
MediaSpec::toXjdfElementbrakEmituje element <Media>; przelicza milimetry na punkty.stringPomija powlekanie i kolor przy ich wartościach domyślnych.
ColorSpec::__constructbool $useCmyk, bool $useSpotColors, list<string> $spotColorNames, string $renderingIntentDomyślnie CMYK, względna intencja kolorymetryczna.instancja
ColorSpec::colorCountbrakZwraca 4 dla CMYK plus jeden na każdy kolor dodatkowy (spot).int
FinishingSpec::__constructbool $fold, bool $staple, bool $punch, bool $trim, string $bindingDomyślnie brak wykończenia; oprawa None.instancja
JobPriorityprzypadki enum Idle, Low, Normal, High, RushenumOparty na stringu.
JobPriority::numericValuebrakMapuje przypadek na 0, 25, 50, 75 lub 100.intNajwyższy to Rush (100).
  • XjdfJobTicket to płynny kreator. Każdy setter zwraca self na potrzeby łańcuchowania.
  • toXml serializuje uproszczony dokument XJDF 2.1 w przestrzeni nazw CIP4 http://www.CIP4.org/JDFSchema_2_0, z Types="ConventionalPrinting".
  • Gdy nie ustawiono identyfikatora zlecenia, toXml podstawia losowy identyfikator XJDF_ zamiast zgłaszać błąd.
  • Priorytet jest zapisywany zarówno jako Comment, jak i numeryczny atrybut NodeInfo. Liczba kopii jest zapisywana jako wyjściowa ilość Component.
  • Zasoby nośnika, koloru i wykończenia pojawiają się tylko wtedy, gdy ustawiono ich specyfikacje.
  • Wszystkie wartości atrybutów są zabezpieczane XML-em (escaping) przed serializacją.
  • Moduł tworzy dokument zlecenia. Nie renderuje strumienia druku ani nie przesyła zlecenia do urządzenia.
  • setCopies z wartością poniżej 1 zgłasza InvalidArgumentException. Jest to jedyny wyjątek zgłaszany przez moduł.
  • Pusty lub nieustawiony identyfikator zlecenia nie jest błędem. toXml podstawia losowy identyfikator XJDF_<hex> w chwili serializacji.
  • Wymiary nośnika są w milimetrach. toXjdfElement przelicza je na punkty PDF przy użyciu współczynnika 72 / 25.4.
  • MediaSpec::isStandard stosuje tolerancję 0,5 mm i akceptuje orientację pionową lub poziomą.
  • MediaSpec::toXjdfElement pomija FrontCoatings, gdy powlekanie to None, oraz MediaColorName, gdy kolor to White.
  • Moduł nie wykonuje żadnych operacji kryptograficznych. Tryb FIPS nie zmienia jego zachowania.

NextPDF Pro emituje uproszczony podzbiór XJDF 2.1. Jest to zgodność funkcjonalna, a nie certyfikacja. NextPDF nie posiada certyfikacji CIP4.

ZachowanieOdniesienieStatus
Struktura zlecenia produkcyjnego XJDF 2.1XJDF 2.1 (CIP4)Zgodne — uproszczony podzbiór
  • Korzeń i przestrzeń nazw: element <XJDF> w http://www.CIP4.org/JDFSchema_2_0, z Types="ConventionalPrinting".
  • Serializator koloru emituje NumColors i ColorsUsed. ColorSpec::renderingIntent jest zachowywany w obiekcie wartości, ale nie jest zapisywany do uproszczonego wyjścia.
  • Wykończenie mapuje wartości logiczne na operacje XJDF: fold na Folding, staple na Stitching, punch na HoleMaking, a trim na Trimming. Oprawa różna od None emituje BindingIntent.
  • Wartości są zabezpieczane XML-em (escaping), lecz poza tym niewalidowane. Oczyść nazwy zleceń i identyfikatory pochodzące ze źródeł zewnętrznych przed budowaniem.

Ta strona dokumentuje wyłącznie zewnętrznie obserwowalne zachowanie oraz wspieraną powierzchnię publicznego API. Wewnętrzne ścieżki przestrzeni nazw, klasy pomocnicze, tabele mechanizmów, nazwy plików runbooków oraz prefiksy zleceń są poza zakresem.