Operazioni tra pacchetti all’interno del pacchetto XPS

Manipola pagine, colori e glifi all’interno del pacchetto XPS tramite C#

 

La soluzione API Aspose.Page per .NET, tra gli altri formati, include il pacchetto XPS come libreria separata per lavorare con i file XPS. La sua ricca funzionalità contiene molte funzioni utili e popolari come l'unione di file, la conversione, il lavoro con la grafica, ecc.

XPS può contenere in un documento più file. Quindi qualsiasi pacchetto XPS dovrebbe avere la funzionalità per manipolare quei file e le loro pagine all'interno del documento e tra diversi documenti XPS. Tali manipolazioni sono chiamate operazioni cross-package. Dovrebbero essere spiegati separatamente.

Qui troverai esempi di operazioni tra pacchetti come manipolazioni di pagine e aggiunta di glifi e colori.

Passaggi per manipolare le pagine all'interno del pacchetto XPS C#.

  1. Imposta il percorso della directory dei documenti.
  2. Crea un file XPS utilizzando la XpsDocument Class .
  3. Per inserire una pagina attiva da un documento all’inizio di un altro documento, utilizzare InsertPage() Metodo.
  4. Per inserire una pagina attiva da un documento alla fine di un altro documento, utilizzare il metodo AddPage() .
  5. Per rimuovere una pagina vuota, utilizzare il metodo RemovePage() .
  6. Per rimuovere una pagina da un documento a un altro, utilizzare InsertPage() e SelectActivePage() Metodi.
  7. Salvare i documenti XPS modificati utilizzando XPsDocument.Save .

Codice C# per manipolazioni tra pacchetti con pagine

    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");

Passaggi per aggiungere un clone di glifo all'interno del pacchetto XPS C#.

  1. Imposta il percorso della directory dei documenti.
  2. Apri un flusso del file XPS.
  3. Crea un file XPS usando la XpsDocument Class.
  4. Aggiungi glifi al documento utilizzando il metodo AddGlyphs() .
  5. Crea il secondo file XPS utilizzando la XpsDocument Class.
  6. Per clonare il glifo dal primo file al secondo file, utilizzare Add() e Clone() Metodi.
  7. Salvare entrambi i documenti XPS mediante il metodo XPsDocument.Save().

Codice C# per copiare un glyth all'interno del pacchetto 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");

Passaggi per aggiungere un Glyph C# pieno di immagini.

  1. Imposta il percorso della directory dei documenti.
  2. Apri un flusso del file XPS.
  3. Crea un file XPS usando la XpsDocument Class.
  4. Aggiungi glifi al documento usando il metodo AddGlyphs().
  5. Per riempire i glifi con un pennello immagine, usa il metodo CreateImageBrush() .
  6. Crea il secondo file XPS utilizzando la XpsDocument Class.
  7. Aggiungi glifi con il carattere dal primo documento al secondo documento utilizzando il metodo AddGlyphs().
  8. Crea un pennello immagine dal riempimento del primo documento e riempi i glifi nel secondo documento utilizzando il metodo CreateImageBrush().
  9. Salvare entrambi i documenti XPS mediante il metodo XPsDocument.Save()

Codice C# per creare un glifo pieno di immagini all'interno del pacchetto 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");



FAQ

1. Cos’è il pacchetto XPS?

Il pacchetto XPS è una libreria separata per gestire i file XPS. Usalo per creare i tuoi convertitori, lettori o altre app per modificare XPS.

2. Come posso ottenere un pacchetto XPS?

Il pacchetto XPS è incluso nella soluzione Aspose.Page .

3. Quali operazioni tra pacchetti sono disponibili?

Utilizzando Aspose XPS Package puoi trasferire pagine da un documento a un altro, clonare oggetti come glifi, stili o impostazioni.

4. Come manipolare le pagine tra documenti XPS?

Per trasferire file con questo pacchetto XPS utilizzare i metodi InsertPage(), AddPage(), RemovePage() e SelectActivePage() della classe XpsDocument.

XPS Cos'è il formato file XPS

Il formato XPS è simile al formato PDF. Entrambi sono formati PDL (Page Description Language). EPS è basato su HTML e non sul linguaggio PostScript. Il file .eps è in grado di contenere un markup della struttura del documento insieme alle informazioni sull'aspetto del documento. Ci sono anche istruzioni aggiunte su come stampare e renderizzare il documento. La caratteristica del formato è che corregge la descrizione del documento, il che significa che avrà lo stesso aspetto indipendentemente da chi e da quale sistema operativo lo apra.