共用方式為


使用IXpsOMPackageWriter 介面

IXpsOMPackageWriter 介面會建立 XPS 檔檔,讓應用程式可以寫入 XPS OM IXpsOMPage 介面的內容。 IXpsOMPackageWriter 介面在文件內容處理或循序建立時最有用。 不同於 WriteToFileWriteToStream 方法的 IXpsOMPackage 介面,使用 IXpsOMPackageWriter 介面時,可以在不完成整個 FixedDocument 或 FixedDocumentSequence 的情況下使用。

概述

IXpsOMPackageWriter 介面會一次寫入一頁,從 XPS 檔的第一頁到最後一頁。 介面可用來建立簡單的 XPS 檔檔,以及包含 FixedDocumentSequence 中多個 FixedDocument 的複雜 XPS 檔檔。 在複雜的 XPS 檔中,FixedDocuments 也會依序建立,從 FixedDocumentSequence 中的第一個 FixedDocument 開始。 IXpsOMPackageWriter 介面不支援以隨機順序建立文件內容。 例如,使用它來建立循序報表,或在設備驅動器篩選器中執行處理,其中文件內容會依序傳送至驅動程式。

術語檢閱

XPS 檔案檔案 是符合 XML 紙張規格的開放式封裝慣例 (OPC) 套件。 因此,在技術上,IXpsOMPackageWriter 介面會建立 OPC 套件,但它是符合 XML 紙張規格的 OPC 套件。 因此,在 XPS 檔的討論中,XPS 檔套件 一詞通常會交替使用。

IXpsOMPackageWriter 介面所建立的 套件 會包含必要的 XPS 檔元件:FixedDocumentSequence、至少一個 FixedDocument 和至少一個 FixedPage。 當 IXpsOMPackageWriter 介面具現化時,就會建立 FixedDocumentSequence。 每次呼叫 IXpsOMPackageWriter::StartNewDocument 時,都會建立 FixedDocument,每次 呼叫 IXpsOMPackageWriter::AddPage 時,就會建立 FixedPage。 由於 介面會循序寫入文件內容,因此 AddPage 方法會將頁面新增至最近建立的 FixedDocument。

使用IXpsOMPackageWriter 介面

下列程序說明如何使用 IXpsOMPackageWriter 介面建立 XPS 檔檔。 此程式不會描述如何具現化 IXpsOMPage 介面及其內容。 如需 IXpsOMPage 的詳細資訊以及如何將內容新增到頁面,請參閱 XPS OM 頁面介面 和"另請參閱"部分列出的主題。

建立文件

  1. 實例化 IXpsOMPackageWriter 介面。

    這會在套件中建立一個空的 FixedDocumentSequence。

  2. 呼叫 IXpsOMPackageWriter::StartNewDocument,在套件中啟動新檔。

    新增頁面之前,請先呼叫 IXpsOMPackageWriter::StartNewDocument,將 FixedDocument 新增至步驟 1 中建立的 FixedDocumentSequence。

  3. 新增內容。

  4. 使用 IXpsOMPackageWriter::Close 關閉套件及其內容。

進階功能

IXpsOMPackageWriter 介面的方法也支援新增資源、縮圖和列印票證。 您可以在套件、FixedDocumentSequence、FixedDocument 和 FixedPage 層級新增這些文件元件。 如需使用此介面進行列印的詳細資訊,請參閱 列印 XPS OM

使用 XPS 數位簽名 API

XPS OM 頁面介面

流覽 XPS OM

使用 XPS OM 畫布與視覺介面

使用 XPS OM 路徑介面

使用 XPS OM 文字、圖形和影像介面

XPS OM 列印票證介面

IXpsOMThumbnailGenerator

XPS 文件 API 參考

XML 紙張規格