Opérations inter-paquets au sein d’un paquet XPS
Manipuler les pages, les couleurs et les glyphes au sein d’un paquet XPS via C#
La solution API Aspose.Page pour .NET, parmi d'autres formats, inclut le paquet XPS en tant que bibliothèque distincte pour travailler avec les fichiers XPS. Sa riche fonctionnalité contient de nombreuses caractéristiques utiles et populaires telles que la fusion de fichiers, la conversion, le travail avec les graphiques, etc.
L'XPS peut contenir plusieurs fichiers dans un seul document. Ainsi, tout paquet XPS doit avoir la fonctionnalité pour manipuler ces fichiers et leurs pages à l'intérieur du document et entre différents documents XPS. Ces manipulations sont appelées opérations inter-paquets. Elles doivent être expliquées séparément.
Vous trouverez ici des exemples de telles opérations inter-paquets comme les manipulations de pages, et l'ajout de glyphes et de couleurs.
Étapes pour manipuler des pages au sein d'un paquet XPS avec C#.
- Définissez le chemin vers le répertoire des documents.
- Créez un fichier XPS à l’aide de la classe XpsDocument .
- Pour insérer une page active d’un document au début d’un autre document, utilisez la méthode InsertPage() .
- Pour insérer une page active d’un document à la fin d’un autre document, utilisez la méthode AddPage() .
- Pour supprimer une page vide, utilisez la méthode RemovePage() .
- Pour déplacer une page d’un document vers un autre document, utilisez les méthodes InsertPage() et SelectActivePage() .
- Enregistrez les documents XPS modifiés à l’aide de XPsDocument.Save .
Code C# pour les manipulations de pages inter-paquets
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 au sein d'un paquet XPS avec C#.
- Définissez le chemin vers le répertoire des documents.
- Ouvrez un flux du fichier XPS.
- Créez un fichier XPS à l’aide de la classe XpsDocument.
- Ajoutez des glyphes au document à l’aide de la méthode AddGlyphs() .
- Créez le deuxième fichier XPS à l’aide de la classe XpsDocument.
- Pour cloner le glyphe du premier fichier vers le deuxième fichier, utilisez les méthodes Add() et Clone() .
- Enregistrez les deux documents XPS au moyen de la méthode XPsDocument.Save().
Code C# pour copier un glyphe au sein d'un paquet 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 glyphe rempli d'une image avec C#.
- Définissez le chemin vers le répertoire des documents.
- Ouvrez un flux du fichier XPS.
- Créez un fichier XPS à l’aide de la classe XpsDocument.
- Ajoutez des glyphes au document à l’aide de la méthode AddGlyphs().
- Pour remplir les glyphes avec un pinceau d’image, utilisez la méthode CreateImageBrush() .
- Créez le deuxième fichier XPS à l’aide de la classe XpsDocument.
- Ajoutez des glyphes avec la police du premier document au deuxième document à l’aide de la méthode AddGlyphs().
- Créez un pinceau d’image à partir du remplissage du premier document et remplissez les glyphes dans le deuxième document à l’aide de la méthode CreateImageBrush().
- Enregistrez les deux documents XPS au moyen de la méthode XPsDocument.Save()
Code C# pour créer un glyphe rempli d'une image au sein d'un paquet 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
XPS (XML Paper Specification) est l’équivalent Microsoft du PDF. Il repose sur XML/HTML, préserve la mise en page sur toutes les plateformes et est indépendant du système d’exploitation.