Operações entre pacotes no pacote XPS

Manipule páginas, cores e glifos dentro do pacote XPS via C#

 

A Solução API Aspose.Page para .NET entre outros formatos inclui o Pacote XPS como uma biblioteca separada para trabalhar com arquivos XPS. Sua rica funcionalidade contém muitos recursos úteis e populares, como mesclagem de arquivos, conversão, trabalho com gráficos, etc.

XPS pode conter em um documento vários arquivos. Portanto, qualquer pacote XPS deve ter a funcionalidade de manipular esses arquivos e suas páginas dentro do documento e entre diferentes documentos XPS. Essas manipulações são chamadas de operações entre pacotes. Eles devem ser explicados separadamente.

Aqui você encontrará exemplos de operações entre pacotes como manipulação de página e adição de glifos e cores.

Etapas para manipular páginas no pacote XPS C#.

  1. Defina o caminho para o diretório de documentos.
  2. Crie um arquivo XPS usando a XpsDocument Class .
  3. Para inserir uma página ativa de um documento para o início de outro documento, use o InsertPage() Método.
  4. Para inserir uma página ativa de um documento para o final de outro documento, use o método AddPage() .
  5. Para remover uma página vazia, use o método RemovePage() .
  6. Para remover uma página de um documento para outro, use InsertPage() e SelectActivePage() Métodos.
  7. Salve os documentos XPS alterados usando o XPsDocument.Save .

Código C# para manipulações entre pacotes com páginas

    using Aspose.Page.XPS;
    using Aspose.Page.XPS.XpsModel;
    using System.Drawing;
    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithCrossPackageOperations();

    // Create the first XPS Document
    XpsDocument doc1 = new XpsDocument(dataDir + "input1.xps");

    // Create the second XPS Document
    XpsDocument doc2 = new XpsDocument(dataDir + "input2.xps");

    // Create the third XPS Document
    XpsDocument doc3 = new XpsDocument(dataDir + "input3.xps");

    // Create the fourth XPS Document
    XpsDocument doc4 = new XpsDocument();

    // Insert the active page (1 in this case) from the second document to the beginning of the fourth document
    doc4.InsertPage(1, doc2.Page, false);

    // Insert the active page (1 in this case) from the third document to the end of the fourth document
    doc4.AddPage(doc3.Page, false);

    // Remove page 2 from the fourth document. This is an empty page that was created when the document had been created.
    doc4.RemovePageAt(2);

    // Insert page 3 from the first document to the second postion of the fourth document
    doc4.InsertPage(2, doc1.SelectActivePage(3), false);

    // Save the fourth XPS document
    doc4.Save(dataDir + "out.xps");

Etapas para adicionar um clone de glifo no XPS Package C#.

  1. Defina o caminho para o diretório de documentos.
  2. Abra um fluxo do arquivo XPS.
  3. Crie um arquivo XPS usando a XpsDocument Class.
  4. Adicione glifos ao documento usando o método AddGlyphs() .
  5. Crie o segundo arquivo XPS usando a XpsDocument Class.
  6. Para clonar o glifo do primeiro arquivo para o segundo arquivo, use Add() e Clone() Métodos.
  7. Salve ambos os documentos XPS por meio do método XPsDocument.Save().

Código C# para copiar um glyth no pacote XPS

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithCrossPackageOperations();

    // Create the first XPS Document
    XpsDocument doc1 = new XpsDocument();

    // Add glyphs to the first document
    XpsGlyphs glyphs = doc1.AddGlyphs("Times New Roman", 200, FontStyle.Bold, 50, 250, "Test");

    // Fill glyphs in the first document with one color
    glyphs.Fill = doc1.CreateSolidColorBrush(Color.Green);

    // Create the second XPS Document
    XpsDocument doc2 = new XpsDocument();

    // Add glyphs cloned from the one's from the first document
    glyphs = doc2.Add(glyphs.Clone());

    // Fill glyphs in the second document with another color
    ((XpsSolidColorBrush)glyphs.Fill).Color = doc2.CreateColor(Color.Red);

    // Save the first XPS document
    doc1.Save(dataDir + "out1.xps");

    // Save the second XPS document
    doc2.Save(dataDir + "out2.xps");

Etapas para adicionar um Glyph C# preenchido com imagem.

  1. Defina o caminho para o diretório de documentos.
  2. Abra um fluxo do arquivo XPS.
  3. Crie um arquivo XPS usando a XpsDocument Class.
  4. Adicione glifos ao documento usando o método AddGlyphs().
  5. Para preencher os glifos com um pincel de imagem, use o método CreateImageBrush() .
  6. Crie o segundo arquivo XPS usando a XpsDocument Class.
  7. Adicione glifos com a fonte do primeiro documento para o segundo documento usando o método AddGlyphs().
  8. Crie um pincel de imagem a partir do preenchimento do primeiro documento e preencha os glifos no segundo documento usando o método CreateImageBrush().
  9. Salve ambos os documentos XPS por meio do método XPsDocument.Save()

Código C# para criar um glifo preenchido com imagem no pacote XPS

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithCrossPackageOperations();

    // Create the first XPS Document
    XpsDocument doc1 = new XpsDocument();

    // Add glyphs to the first document
    XpsGlyphs glyphs1 = doc1.AddGlyphs("Times New Roman", 200, FontStyle.Bold, 50, 250, "Test");

    // Fill the glyphs with an image brush
    glyphs1.Fill = doc1.CreateImageBrush(dataDir + "R08SY_NN.tif", new RectangleF(0f, 0f, 128f, 192f),
        new RectangleF(0f, 0f, 64f, 96f));
    ((XpsImageBrush)glyphs1.Fill).TileMode = XpsTileMode.Tile;

    // Create the second XPS Document
    XpsDocument doc2 = new XpsDocument();

    // Add glyphs with the font from the first document to the second document
    XpsGlyphs glyphs2 = doc2.AddGlyphs(glyphs1.Font, 200, 50, 250, "Test");

    // Create an image brush from the fill of the the first document and fill glyphs in the second document
    glyphs2.Fill = doc2.CreateImageBrush(((XpsImageBrush)glyphs1.Fill).Image, new RectangleF(0f, 0f, 128f, 192f),
        new RectangleF(0f, 0f, 128f, 192f));
    ((XpsImageBrush)glyphs2.Fill).TileMode = XpsTileMode.Tile;

    // Save the first XPS document
    doc1.Save(dataDir + "out1.xps");

    // Save the second XPS document
    doc2.Save(dataDir + "out2.xps");



Perguntas frequentes

1. O que é o pacote XPS?

O Pacote XPS é uma biblioteca separada para gerenciar arquivos XPS. Use-o para criar seus próprios conversores, leitores ou outros aplicativos para editar XPS.

2. Como posso obter um pacote XPS?

O pacote XPS está incluído na solução Aspose.Page .

3. Quais operações entre pacotes estão disponíveis?

Usando o pacote Aspose XPS você pode transferir páginas de um documento para outro, clonar objetos como glifos, estilos ou configurações.

4. Como manipular páginas entre documentos XPS?

Para transferir arquivos com este pacote XPS, use os métodos InsertPage(), AddPage(), RemovePage() e SelectActivePage() da classe XpsDocument.

XPS O que é XPS Formato de Arquivo

O formato XPS é semelhante ao formato PDF. Ambos são formatos de linguagem de descrição de página (PDL). EPS é baseado em HTML e não em linguagem PostScript. O arquivo .eps é capaz de conter uma marcação da estrutura do documento junto com as informações de como o documento ficaria. Há também instruções adicionadas sobre como imprimir e renderizar o documento. A característica do formato é que ele corrige a descrição do documento, o que significa que ele terá a mesma aparência, não importa quem e de qual sistema operacional o abra.