Opérations inter-packages dans le package XPS

Manipuler les pages, les couleurs et les glyphes dans le package XPS via C#

 

La solution API Aspose.Page pour .NET, entre autres formats, inclut le package XPS en tant que bibliothèque distincte pour travailler avec les fichiers XPS. Ses fonctionnalités riches contiennent de nombreuses fonctionnalités utiles et populaires telles que la fusion de fichiers, la conversion, l'utilisation de graphiques, etc.

XPS peut contenir dans un même document plusieurs fichiers. Ainsi, tout package XPS devrait avoir la fonctionnalité de manipuler ces fichiers et leurs pages à l'intérieur du document et entre différents documents XPS. De telles manipulations sont appelées opérations inter-packages. Ils doivent être expliqués séparément.

Vous trouverez ici des exemples d'opérations inter-packages telles que les manipulations de pages et l'ajout de glyphes et de couleurs.

Étapes pour manipuler des pages dans XPS Package C#.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Créez un fichier XPS à l’aide de XpsDocument Class .
  3. Pour insérer une page active d’un document au début d’un autre document, utilisez InsertPage() Méthode.
  4. Pour insérer une page active d’un document à la fin d’un autre document, utilisez la méthode AddPage() .
  5. Pour supprimer une page vide, utilisez la méthode RemovePage() .
  6. Pour supprimer une page d’un document à un autre, utilisez InsertPage() et SelectActivePage() Méthodes.
  7. Enregistrez les documents XPS modifiés à l’aide de XPsDocument.Save .

Code C# pour les manipulations inter-packages avec des pages

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

Étapes pour ajouter un clone de glyphe dans le package XPS C#.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Ouvrez un flux du fichier XPS.
  3. Créez un fichier XPS à l’aide de la classe XpsDocument.
  4. Ajoutez des glyphes au document à l’aide de la méthode AddGlyphs() .
  5. Créez le deuxième fichier XPS à l’aide de la classe XpsDocument.
  6. Pour cloner le glyphe du premier fichier vers le deuxième fichier, utilisez Add() et Clone() Méthodes.
  7. Enregistrez les deux documents XPS au moyen de la méthode XPsDocument.Save().

Code C# pour copier un glyth dans le package 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");

Étapes pour ajouter un Glyph C# rempli d'image.

  1. Définissez le chemin d’accès au répertoire des documents.
  2. Ouvrez un flux du fichier XPS.
  3. Créez un fichier XPS à l’aide de la classe XpsDocument.
  4. Ajoutez des glyphes au document à l’aide de la méthode AddGlyphs().
  5. Pour remplir les glyphes avec un pinceau d’image, utilisez la méthode CreateImageBrush() .
  6. Créez le deuxième fichier XPS à l’aide de la classe XpsDocument.
  7. Ajoutez des glyphes avec la police du premier document au deuxième document à l’aide de la méthode AddGlyphs().
  8. Créez un pinceau d’image à partir du remplissage du premier document et remplissez les glyphes du second document à l’aide de la méthode CreateImageBrush().
  9. Enregistrez les deux documents XPS au moyen de la méthode XPsDocument.Save()

Code C# pour créer un glyphe rempli d'image dans le package 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. Qu’est-ce que le forfait XPS ?

XPS Package est une bibliothèque distincte pour gérer les fichiers XPS. Utilisez-le pour créer vos propres convertisseurs, lecteurs ou autres applications pour éditer XPS.

2. Comment puis-je obtenir un forfait XPS ?

Le package XPS est inclus dans la solution Aspose.Page .

3. Quelles opérations cross-package sont disponibles ?

En utilisant Aspose XPS Package, vous pouvez transférer des pages d’un document à un autre, cloner des objets comme des glyphes, des styles ou des paramètres.

4. Comment manipuler des pages entre des documents XPS ?

Pour transférer des fichiers avec ce package XPS, utilisez les méthodes InsertPage(), AddPage(), RemovePage() et SelectActivePage() de la classe XpsDocument.

XPS Qu'est-ce que le format de fichier XPS

Le format XPS est similaire au format PDF. Les deux sont des formats de langage de description de page (PDL). EPS est basé sur HTML et non sur le langage PostScript. Le fichier .eps est capable de contenir un balisage de la structure du document ainsi que des informations sur l'apparence du document. Il existe également des instructions supplémentaires sur la façon d'imprimer et de rendre le document. La caractéristique du format est qu'il fixe la description du document, ce qui signifie qu'il aura le même aspect, peu importe qui et à partir de quel système opérationnel l'ouvre.