Pro edycja
Print Job — szczegółowa dokumentacja referencyjna
W skrócie
Dział zatytułowany „W skrócie”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.
Dostępność i licencjonowanie
Dział zatytułowany „Dostępność i licencjonowanie”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.
Powierzchnia publicznego API
Dział zatytułowany „Powierzchnia publicznego API”composer require nextpdf/pro:^3Punkt 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;}| Symbol | Parametry | Zachowanie domyślne | Zwraca | Zgłasza lub kończy się błędem | Uwagi |
|---|---|---|---|---|---|
XjdfJobTicket::__construct | brak | Priorytet inicjalizowany na JobPriority::Normal; liczba kopii na 1. | instancja | — | Korzeń płynnego kreatora. |
XjdfJobTicket::setJobId | string $id | Rejestruje identyfikator zlecenia. | self | — | Pusta wartość jest dozwolona; zob. toXml. |
XjdfJobTicket::setJobName | string $name | Rejestruje czytelną nazwę zlecenia. | self | — | Emitowana jako GeneralID, gdy niepusta. |
XjdfJobTicket::setPriority | JobPriority $priority | Nadpisuje domyślny priorytet Normal. | self | — | — |
XjdfJobTicket::setMedia | MediaSpec $media | Dołącza zasób nośnika. | self | — | Opcjonalny; pomijany, gdy nieustawiony. |
XjdfJobTicket::setColor | ColorSpec $color | Dołącza zasób intencji koloru. | self | — | Opcjonalny; pomijany, gdy nieustawiony. |
XjdfJobTicket::setFinishing | FinishingSpec $finishing | Dołącza zasoby wykończeniowe. | self | — | Opcjonalny; pomijany, gdy nieustawiony. |
XjdfJobTicket::setCopies | int $copies | Ustawia wyjściową liczbę kopii. | self | InvalidArgumentException, gdy $copies < 1 | Domyślnie 1. |
XjdfJobTicket::toXml | brak | Serializuje dokument XJDF 2.1. | string | — | Generuje losowy identyfikator zlecenia XJDF_<hex>, gdy żaden nie został ustawiony. |
MediaSpec::__construct | string $mediaType, float $widthMm, float $heightMm, int $weight, string $coating, string $color | Domyślnie biały papier A4 o gramaturze 80 g/m². | instancja | — | Wszystkie parametry opcjonalne. |
MediaSpec::isStandard | brak | Dopasowuje A4, US Letter lub A3 z tolerancją 0,5 mm. | bool | — | Pionowo lub poziomo. |
MediaSpec::toXjdfElement | brak | Emituje element <Media>; przelicza milimetry na punkty. | string | — | Pomija powlekanie i kolor przy ich wartościach domyślnych. |
ColorSpec::__construct | bool $useCmyk, bool $useSpotColors, list<string> $spotColorNames, string $renderingIntent | Domyślnie CMYK, względna intencja kolorymetryczna. | instancja | — | — |
ColorSpec::colorCount | brak | Zwraca 4 dla CMYK plus jeden na każdy kolor dodatkowy (spot). | int | — | — |
FinishingSpec::__construct | bool $fold, bool $staple, bool $punch, bool $trim, string $binding | Domyślnie brak wykończenia; oprawa None. | instancja | — | — |
JobPriority | przypadki enum Idle, Low, Normal, High, Rush | — | enum | — | Oparty na stringu. |
JobPriority::numericValue | brak | Mapuje przypadek na 0, 25, 50, 75 lub 100. | int | — | Najwyższy to Rush (100). |
Kontrakt zachowania
Dział zatytułowany „Kontrakt zachowania”XjdfJobTicketto płynny kreator. Każdy setter zwracaselfna potrzeby łańcuchowania.toXmlserializuje uproszczony dokument XJDF 2.1 w przestrzeni nazw CIP4http://www.CIP4.org/JDFSchema_2_0, zTypes="ConventionalPrinting".- Gdy nie ustawiono identyfikatora zlecenia,
toXmlpodstawia losowy identyfikatorXJDF_zamiast zgłaszać błąd. - Priorytet jest zapisywany zarówno jako
Comment, jak i numeryczny atrybutNodeInfo. 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.
Przypadki brzegowe i tryby awarii
Dział zatytułowany „Przypadki brzegowe i tryby awarii”setCopiesz wartością poniżej 1 zgłaszaInvalidArgumentException. Jest to jedyny wyjątek zgłaszany przez moduł.- Pusty lub nieustawiony identyfikator zlecenia nie jest błędem.
toXmlpodstawia losowy identyfikatorXJDF_<hex>w chwili serializacji. - Wymiary nośnika są w milimetrach.
toXjdfElementprzelicza je na punkty PDF przy użyciu współczynnika 72 / 25.4. MediaSpec::isStandardstosuje tolerancję 0,5 mm i akceptuje orientację pionową lub poziomą.MediaSpec::toXjdfElementpomijaFrontCoatings, gdy powlekanie toNone, orazMediaColorName, gdy kolor toWhite.- Moduł nie wykonuje żadnych operacji kryptograficznych. Tryb FIPS nie zmienia jego zachowania.
Zgodność ze standardami
Dział zatytułowany „Zgodność ze standardami”NextPDF Pro emituje uproszczony podzbiór XJDF 2.1. Jest to zgodność funkcjonalna, a nie certyfikacja. NextPDF nie posiada certyfikacji CIP4.
| Zachowanie | Odniesienie | Status |
|---|---|---|
| Struktura zlecenia produkcyjnego XJDF 2.1 | XJDF 2.1 (CIP4) | Zgodne — uproszczony podzbiór |
Uwagi programistyczne
Dział zatytułowany „Uwagi programistyczne”- Korzeń i przestrzeń nazw: element
<XJDF>whttp://www.CIP4.org/JDFSchema_2_0, zTypes="ConventionalPrinting". - Serializator koloru emituje
NumColorsiColorsUsed.ColorSpec::renderingIntentjest 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 naStitching, punch naHoleMaking, a trim naTrimming. Oprawa różna odNoneemitujeBindingIntent. - 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.
Granica publikacji
Dział zatytułowany „Granica publikacji”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.