Paketübergreifende Vorgänge innerhalb des XPS-Pakets

Manipulieren Sie Seiten, Farben und Glyphen innerhalb des XPS-Pakets über C#

 

Die Aspose.Page-API-Lösung für .NET enthält neben anderen Formaten das XPS-Paket als separate Bibliothek für die Arbeit mit XPS-Dateien. Seine reichhaltige Funktionalität enthält viele nützliche und beliebte Funktionen wie das Zusammenführen von Dateien, Konvertieren, Arbeiten mit Grafiken usw.

XPS kann in einem Dokument mehrere Dateien enthalten. Daher sollte jedes XPS-Paket über die Funktionalität verfügen, diese Dateien und ihre Seiten innerhalb des Dokuments und zwischen verschiedenen XPS-Dokumenten zu manipulieren. Solche Manipulationen werden paketübergreifende Operationen genannt. Sie sind gesondert zu erläutern.

Hier finden Sie Beispiele für solche paketübergreifenden Operationen wie Seitenmanipulationen und das Hinzufügen von Glyphen und Farben.

Schritte zum Bearbeiten von Seiten im XPS-Paket C#.

  1. Legen Sie den Pfad zum Dokumentenverzeichnis fest.
  2. Erstellen Sie eine XPS-Datei mit der XpsDocument Class .
  3. Um eine aktive Seite aus einem Dokument an den Anfang eines anderen Dokuments einzufügen, verwenden Sie InsertPage() Methode.
  4. Um eine aktive Seite aus einem Dokument am Ende eines anderen Dokuments einzufügen, verwenden Sie die Methode AddPage() .
  5. Verwenden Sie zum Entfernen einer leeren Seite die Methode RemovePage() .
  6. Um eine Seite von einem Dokument zu einem anderen Dokument zu entfernen, verwenden Sie InsertPage() und SelectActivePage() Methoden.
  7. Speichern Sie die geänderten XPS-Dokumente mit XPsDocument.Save .

C#-Code für paketübergreifende Manipulationen mit Seiten

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

Schritte zum Hinzufügen eines Glyphenklons in XPS Package C#.

  1. Legen Sie den Pfad zum Dokumentenverzeichnis fest.
  2. Öffnen Sie einen Stream der XPS-Datei.
  3. Erstellen Sie eine XPS-Datei mit der Klasse XpsDocument.
  4. Fügen Sie mithilfe der Methode AddGlyphs() Glyphen zum Dokument hinzu.
  5. Erstellen Sie die zweite XPS-Datei mit der Klasse XpsDocument.
  6. Um die Glyphe aus der ersten Datei in die zweite Datei zu klonen, verwenden Sie Add() und Clone() Methoden.
  7. Speichern Sie beide XPS-Dokumente mit der Methode XPsDocument.Save().

C#-Code zum Kopieren eines Glyth innerhalb des XPS-Pakets

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

Schritte zum Hinzufügen einer mit Bildern gefüllten Glyphe C#.

  1. Legen Sie den Pfad zum Dokumentenverzeichnis fest.
  2. Öffnen Sie einen Stream der XPS-Datei.
  3. Erstellen Sie eine XPS-Datei mit der Klasse XpsDocument.
  4. Fügen Sie mithilfe der AddGlyphs()-Methode Glyphen zum Dokument hinzu.
  5. Um die Glyphen mit einem Bildpinsel zu füllen, verwenden Sie die Methode CreateImageBrush() .
  6. Erstellen Sie die zweite XPS-Datei mit der Klasse XpsDocument.
  7. Fügen Sie mithilfe der Methode AddGlyphs() Glyphen mit der Schriftart aus dem ersten Dokument zum zweiten Dokument hinzu.
  8. Erstellen Sie einen Bildpinsel aus der Füllung des ersten Dokuments und füllen Sie Glyphen im zweiten Dokument mit der Methode CreateImageBrush().
  9. Speichern Sie beide XPS-Dokumente mit der Methode XPsDocument.Save()

C#-Code zum Erstellen einer mit Bildern gefüllten Glyphe innerhalb des XPS-Pakets

    // 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. Was ist das XPS-Paket?

XPS Package ist eine separate Bibliothek zum Verwalten von XPS-Dateien. Verwenden Sie es, um Ihre eigenen Konverter, Reader oder andere Apps zum Bearbeiten von XPS zu erstellen.

2. Wie kann ich ein XPS-Paket erhalten?

Das XPS-Paket ist in der Aspose.Page -Lösung enthalten.

3. Welche paketübergreifenden Operationen sind verfügbar?

Mit dem Aspose XPS-Paket können Sie Seiten von einem Dokument in ein anderes übertragen und Objekte wie Glyphen, Stile oder Einstellungen klonen.

4. Wie manipuliert man Seiten zwischen XPS-Dokumenten?

Um Dateien mit diesem XPS-Paket zu übertragen, verwenden Sie die Methoden InsertPage(), AddPage(), RemovePage() und SelectActivePage() der XpsDocument-Klasse.

XPS Was ist XPS Dateiformat

Das XPS-Format ähnelt dem PDF-Format. Beides sind Formate der Seitenbeschreibungssprache (PDL). EPS basiert auf HTML und nicht auf der PostScript-Sprache. Die .eps-Datei kann ein Markup der Dokumentstruktur zusammen mit Informationen darüber enthalten, wie das Dokument aussehen würde. Es gibt auch Anweisungen zum Drucken und Rendern des Dokuments. Das Merkmal des Formats ist, dass es die Beschreibung des Dokuments festlegt, was bedeutet, dass es gleich aussieht, egal wer und von welchem ​​​​Betriebssystem es öffnet.