Sdílet prostřednictvím


Definice možností

Toto téma není aktuální. Nejaktuálnější informace naleznete v specifikace schématu tisku.

Klíčovým aspektem při definování možnosti je to provést takovým způsobem, že může být smysluplně v porovnání s jinými instancemi option obsaženými ve stejné funkci. Porovnání musí být smysluplné, protože instance Option slouží k definování konfigurace nejen zařízení, ale úlohy, nezávisle na zařízení nebo PrintCapabilities, které byly použity k vytvoření konfigurace. Ostatní instance možnosti v funkci se mohou objevit buď ve stejném dokumentu PrintCapabilities, nebo v jiném dokumentu PrintCapabilities, který představuje jiné zařízení, dokument PrintCapabilities, který je definován jinou stranou pracující nezávisle. Jakmile klient vybere konfiguraci zařízení, která se má použít k vykreslení úlohy nebo dokumentu, tato konfigurace se obvykle uloží spolu s úlohou nebo dokumentem ve formě printTicketu. PrintTicket obsahuje sadu instancí option, obvykle jednu pro každou funkci definovanou v dokumentu PrintCapabilities. Instance možností musí být přenosné a musí zachovat záměr tisku, aby bylo možné tento záměr sdělit, když je tento printTicket předán jinému zařízení, a to i v případě, že má jiný dokument PrintCapabilities, který byl napsán jiným autorem. Hlavní výhodou této přenositelnosti je, že pokud jiné zařízení nepodporuje konkrétně možnost obsaženou v printticketu, ovladač zařízení nebo subsystém dokáže identifikovat a vybrat možnost, která je nejblíže funkce.

Jednou z hlavních funkcí PrintTicket řidiče je identifikace možnosti zařízení v dokumentu PrintCapabilities, který nejvíce odpovídá konkrétní možnosti uvedené v printTicketu. Během tohoto procesu vyhodnocování definovaného ovladačem zařízení se možnost v sadě PrintTicket označuje jako odkaz na možnost, zatímco možnost v dokumentu PrintCapabilities se označuje jako kandidátská možnost. Obecná metrika porovnávání je počet odpovídajících instancí ScoredProperty v kandidátských a referenčních instancích Option; větší počet shod obvykle značí lepší zachování záměru tisku. V procesu vyhodnocování se můžete rozhodnout, že chcete dát větší váhu některým prvkům ScoredProperty než jiným.

Instance Option lze přenášet tak, že zajistíte, že všechny instance option, které patří do stejné funkce, mají jeden nebo více scoredProperty prvky ve společných. To znamená, že existuje sada elementů ScoredProperty, které se zobrazí v každé instanci Option (patří do stejné funkce). Například instance Option pro PageMediaSize Funkce mohou být přenosné, pokud každá instance Option obsahuje ScoredProperty elementy, které definují vnitřní PageMediaSize vlastnosti: MediaSizeWidth a MediaSizeHeight. Ovladač zařízení nebo kód subsystému pak může určit, jak přesně dvě instance možnosti souhlasí porovnáním rozdílů v těchto hodnotách ScoredProperty. Pokud není v dokumentu PrintCapabilities žádná možnost, která přesně odpovídá té v printTicketu, ovladač zařízení může snadno určit a vybrat možnost, která má nejbližší odpovídající rozměry média.

Dva objekty (instance možností v tomto případě) mají prvky ve společnýchnebo ekvivalentní, mají odpovídající prvky, pokud jsou splněny následující tři podmínky.

  1. Dva prvky jsou stejného typu elementu.

  2. Atributy názvu těchto dvou prvků jsou identické (nebo žádný prvek neobsahuje atribut name).

  3. Řetězec nadřazených prvků, které se porovnávají, až přes dva objekty, které je třeba vzít v úvahu, musí splňovat podmínky 1 a 2.

Představte si například situaci, kdy existují dvě instance možnosti, kde každý obsahuje instanci ScoredProperty a že každá z těchto instancí ScoredProperty obsahuje instanci Property. Je zřejmé, že první podmínka je splněna (dvě instance Vlastnosti jsou stejného typu) a část třetí podmínky je splněna (nadřazené instance Vlastnosti jsou stejného typu, ScoredProperty a nadřazené prvky jsou instance Option, které jsou také stejného typu). Pokud jsou atributy názvů v uvedeném pořadí, instance Vlastnosti, ScoredProperty instance a Option instance buď stejné, nebo nejsou zadány, tyto dvě instance Option mají společné prvky.

Z výše uvedeného vyplývá, že prvním krokem při vytváření instancí Option je definovat sadu scoredProperty elementů, které jsou přítomny ve většině nebo ve všech instancích Option. Pokud je možné atribut konfigurace zařízení reprezentovat standardní funkcí (která je uvedena v klíčových slovech schématu tisku), poznamenejte si prvky ScoredProperty společné ve standardních instancích option. Měli byste se ujistit, že všechny nové instance Option, které zavádíte, obsahují také tyto scoredProperty elementy. Vždy můžete podle potřeby přidávat další prvky ScoredProperty, abyste odlišili instance Option od standardních instancí Option. Pokud existuje dobrý důvod, můžete dokonce odstranit jeden nebo více prvků ScoredProperty, i když to snižuje přenositelnost takové možnosti. Samozřejmě, aspekty přenositelnosti navrhují použití nezměněných standardních instancí option, pokud není mezi vaší možností a standardní instancí option nějaký vnitřní rozdíl, který se musí promítnout do nové instance Option.

Následující příklad ukazuje situaci, pro kterou můžete chtít přidat ScoredProperty elementu do instance Option. Všechny standardní instance Option pro PageMediaSize Feature mají mediaSizeWidth a MediaSizeHeight ScoredProperty prvky společné. Předpokládejme, že vaše zařízení může podporovat jednu ze standardních velikostí médií dopisu tím, že papír bude transverzní (LongEdgeFirst) nebo podélně (ShortEdgeFirst). Za předpokladu, že nechcete zavést novou funkci směru informačního kanálu pro zveřejnění tohoto stupně volnosti, můžete místo toho upravit dvě instance PageMediaSize Option pro Letter tak, aby zahrnoval orientaci podávání papíru. Pro tyto dvě instance Letter Option začněte standardní PageMediaSize Option instance a přidejte nový ScoredProperty element představující FeedDirection. V jedné instanci Option nastavte FeedDirection ScoredProperty na LongEdgeFirst; v druhé instanci Option nastavte FeedDirection na ShortEdgeFirst. Všimněte si, že tyto nové instance option udržují přenositelnost. Pokud možnost představující písmeno, ShortEdgeFirst je uložena do printTicket a jiné zařízení, které podporuje pouze standardní možnost dopisu je vybrána k vykreslení úlohy, může kód odpovídající možnosti rychle určit, že standardní písmeno možnosti je nejlepší shodovat s písmenem Option Letter, ShortEdgeFirst. Důvodem, proč je to nejlepší shoda, je, že všechny instance ScoredProperty souhlasí s výjimkou FeedDirection ScoredProperty, která neexistuje ve standardní možnosti letter.

Můžete také narazit na případy, kdy změny možnosti skutečně změní význam tak, aby změněná možnost již nebyla považována za specializovaný případ originálu. V takových případech byste měli změnit název možnosti tak, aby odrážel rozdíl mezi upravenou instancí option a nezměněnou instancí. Pouze autor dokumentu PrintCapabilities pro konkrétní zařízení může rozhodnout, zda se možnost nabízená zařízením dostatečně liší od standardní instance option, aby bylo možné zaručit nekompatibilní definici.

Teď zvažte případ, kdy má vaše zařízení atribut konfigurace zařízení, který neodpovídá žádné ze standardních instancí funkcí. V takovém případě nelze spoléhat na standardní instance option poskytnout seznam scoredProperty elementy společné. Když vytvoříte instanci ScoredProperty, hlavním cílem je rozlišovat jednotlivé možnosti od ostatních ve funkci a popsat, proč by uživatel vybral jednu možnost za jinou. Směrný plán je charakterizovat jednotlivé možnosti jedinečným atributem názvu a ScoredProperty, který obsahuje atribut name, se stane atributem používaným k určení společných prvků.

Po vytvoření sady elementů ScoredProperty společné je jednoduché přiřadit příslušné hodnoty každému ScoredProperty vytvořit jednotlivé možnosti. Stejně jako v předchozím příkladu může být pro některé instance Option nutné přidat další instance ScoredProperty nebo odstranit některé prvky, které jsou společné k vytvoření příslušné instance Option.

Je třeba poznamenat, že schéma tisku vyžaduje, aby sada scoredProperty instance, jejich umístění a hodnoty přiřazené ke každému ScoredProperty v option musí zůstat konstantní, nezávisle na konfiguraci. Celý koncept schématu tisku závisí na instancích Option s pevnou, identifikovatelnou vlastností a scoredProperty instance, které jsou sdíleny na mnoha zařízeních.

specifikace schématu tisku