共用方式為


PrintTicket 架構和檔建構

本主題不是最新的。 如需最新的資訊,請參閱 列印架構規格

使用 DEVMODE 結構指定裝置組態資訊的目前方法,有數個限制。 首先,DEVMODE 結構是二進位結構,這可能會導致不同版本的問題。 其次,它會分成不可擴充的公用部分,以及只能由驅動程式存取的私人部分,然後只能由建立它的特定驅動程式存取。 PrintTicket 格式會使用 XML 型列印架構架構來表示組態資訊,藉此消除 DEVMODE 結構的這些缺點。

PrintTicket 架構可解決剛才提及的兩個問題。 首先,PrintTicket 架構是以 XML 為基礎的文字檔,因此會消除擴充性和版本設定的問題。 其次,所有用戶端都可以使用組態資訊,這表示任何用戶端或提供者都可以儲存及擷取 PrintTicket 中包含的任何資訊。 選項會使用列印架構架構和衍生的 PrintCapabilities 檔所使用的相同技術來描述。 基於這個理由,PrintTicket 提供選項定義模型要實現的所有潛在可攜性優點。 如需詳細資訊,請參閱 列印架構架構 。 本節的目標物件包括下列群組:

  • PrintTicket / PrintCapabilities 提供者介面的實作者

  • PrintTicket 的取用者

  • PrintTicket / PrintCapabilities 提供者介面的用戶端

前一個清單中的第一個類別成員在本節其餘部分稱為 PrintTicket 提供者。 最後兩個類別的成員稱為 PrintTicket 取用者。

與列印架構和 PrintCapabilities 架構的關聯性

PrintTicket 和 PrintCapabilities 架構都是列印架構的特殊部分。 列印架構的這些子集之間的主要結構差異是 PrintTicket 架構包含 Property 和 ParameterInit 實例,這些實例不包含在 PrintCapabilities 架構中,而 PrintCapabilities 架構則包含 Property 和 ParameterDef 實例,而 PrintCapabilities 架構則不包含在 PrintTicket 架構中。 除了這些差異之外,PrintCapabilities 和 PrintTicket 架構通常會在內容中互相鏡像、共用功能、選項、ScoredProperty 和 Value 實例。 任何這類共用內容都必須保持最新狀態。 例如,如果在 PrintCapabilities 架構的 MediaSize 功能中進行變更,則必須在 PrintTicket 架構中進行相同的變更。

列印架構規格