本主題不是最新的。 如需最新的資訊,請參閱 列印架構規格。
目前的 Win32 DevCaps 函式(例如 GetDeviceCaps 或 DeviceCapabilities,這兩個函式都如 Microsoft Platform Software Development Kit (SDK) 檔所述,會嚴重限制非驅動程式元件在列印裝置的功能和屬性方面可以取得的信息類型。 不支持發佈列印處理器的功能,也沒有列舉非標準功能的方法。 因此,驅動程式以外的元件無法建構完整的使用者介面。 此外,用戶端或應用程式無法完全判斷裝置的功能,或列印佇列超出 Win32 DevCaps 函式所提供的功能。 目前的函式無法擴充,因此裝置無法發佈新的屬性或功能。
PrintCapabilities 架構旨在藉由提供這些函式所提供之功能的超集,來消除 Win32 DevCaps 函式的許多限制。 如果需要更多功能,PrintCapabilities 檔的提供者可以藉由新增私用定義的元素實例,在 Print Schema Framework 的條件約束內擴充列印架構關鍵詞。 由於它依賴 XML 作為交換媒介,PrintCapabilities 檔的任何取用者都可以存取檔中的所有數據,而不需擔心與不同的作系統版本相容。 本節描述 PrintCapabilities 架構及其使用詳細數據。
本節的目標物件包括下列群組:
PrintTicket/PrintCapabilities 提供者介面的實作者
PrintCapabilities 的取用者
PrintTicket/PrintCapabilities 提供者介面的用戶端
上述清單中的第一個類別稱為本節其餘部分的 PrintCapabilities 提供者。 第二個和第三個類別稱為 PrintCapabilities 取用者。
與列印架構和 PrintTicket 架構的關聯性
PrintCapabilities 和 PrintTicket 架構都是列印架構的特殊部分。 列印架構的這些子集之間的主要結構差異在於 PrintCapabilities 架構包含未包含在 PrintTicket 架構中的 Property 和 ParameterDef 實例,而 PrintTicket 架構則包含 Property 和 ParameterInit 實例,而 PrintCapabilities 架構不包含在 PrintCapabilities 架構中。 除了這些差異之外,PrintCapabilities 和 PrintTicket 架構通常會在內容、共用功能、選項、ScoredProperty 和 Value 實例中互相鏡像。 任何這類共用內容都必須保留 up-to-date。 例如,如果在 PrintCapabilities 架構的 PageMediaSize 功能中進行變更,則必須在 PrintTicket 架構中進行相同的變更。
相關主題