Compartilhar via


Usando a interface IXpsOMPackageWriter

A interface IXpsOMPackageWriter cria um arquivo de documento XPS no qual os aplicativos podem gravar o conteúdo das interfaces IXpsOMPage de um OM XPS. A interface IXpsOMPackageWriter é mais útil quando o conteúdo do documento está sendo processado ou criado sequencialmente. Ao contrário dos métodos WriteToFile e WriteToStream da interface IXpsOMPackage , para que a interface IXpsOMPackageWriter não seja usada nem o FixedDocument inteiro nem o FixedDocumentSequence precisa ser concluído.

Visão geral

A interface IXpsOMPackageWriter grava uma página de cada vez, desde a primeira página de um documento XPS até a última. A interface pode ser usada para criar arquivos de documento XPS simples e também arquivos de documento XPS complexos que contêm mais de um FixedDocument no FixedDocumentSequence. Em arquivos de documento XPS complexos, os FixedDocuments também são criados em sequência, começando com o primeiro FixedDocument no FixedDocumentSequence. A interface IXpsOMPackageWriter não dá suporte à criação de conteúdo do documento em ordem aleatória. Use-o, por exemplo, para criar um relatório sequencial ou para executar o processamento em um filtro de driver onde o conteúdo do documento é enviado ao driver de forma sequencial.

Revisão de terminologia

Um arquivo de documento XPS é um pacote OPC (Open Packaging Conventions) que está em conformidade com a Especificação de Papel XML. Portanto, tecnicamente, a interface IXpsOMPackageWriter cria um pacote OPC, mas é um pacote OPC que está em conformidade com a Especificação de Papel XML. Por esse motivo, em discussões sobre documentos XPS, os termos de documento XPS e pacote geralmente são usados de forma intercambiável.

O pacote criado pela interface IXpsOMPackageWriter conterá os componentes de documento XPS necessários: fixedDocumentSequence, pelo menos um FixedDocument e pelo menos um FixedPage. O FixedDocumentSequence é criado quando a interface IXpsOMPackageWriter é instanciada. Um FixedDocument é criado sempre que IXpsOMPackageWriter::StartNewDocument é chamado, e uma FixedPage é criada sempre que IXpsOMPackageWriter::AddPage é chamado. Como a interface grava o conteúdo do documento sequencialmente, o método AddPage adiciona a página ao FixedDocument criado mais recentemente.

Usando a interface IXpsOMPackageWriter

O procedimento a seguir descreve como criar um arquivo de documento XPS usando a interface IXpsOMPackageWriter . O procedimento não descreve como criar uma instância de uma interface IXpsOMPage e seu conteúdo. Para obter mais informações sobre o IXpsOMPage e a adição de conteúdo a uma página, consulte interfaces de página OM do XPS e os tópicos listados na seção Ver Também.

Criando um documento

  1. Instancie uma interface IXpsOMPackageWriter .

    Isso cria um FixedDocumentSequence vazio no pacote.

  2. Inicie um novo documento no pacote chamando IXpsOMPackageWriter::StartNewDocument.

    Antes de adicionar uma página, chame IXpsOMPackageWriter::StartNewDocument para adicionar um FixedDocument ao FixedDocumentSequence que foi criado na etapa 1.

  3. Adicionar conteúdo.

  4. Feche o pacote e seu conteúdo chamando IXpsOMPackageWriter::Close.

Recursos avançados

Os métodos da interface IXpsOMPackageWriter também dão suporte à adição de recursos, miniaturas e tíquetes de impressão. Esses componentes de documento podem ser adicionados nos níveis de pacote, FixedDocumentSequence, FixedDocument e FixedPage. Para obter mais informações sobre como usar essa interface para impressão, consulte Imprimir um OM XPS.

Usando a API de Assinatura Digital do XPS

Interfaces de página OM XPS

Navegar pelo XPS OM

Trabalhando com interfaces visuais e tela do XPS OM

Trabalhando com interfaces de caminho do XPS OM

Trabalhando com interfaces de imagem, elementos gráficos e texto do XPS OM

Interfaces de tíquete de impressão do XPS OM

IXpsOMThumbnailGenerator

Referência da API de Documento XPS

XML Paper Specification