XPS OXPS vers PNG JPG Image C#

Le format de fichier XPS est fréquemment utilisé dans les applications de traitement de fichiers. Vous pouvez convertir XPS ou OXPS en image JPG ou PNG par programmation avec C# ou VB.NET dans vos applications basées sur le framework .NET. Passons en revue les scénarios suivants pour en savoir plus sur la conversion XPS :

API de conversion d’images XPS, OXPS en JPG ou PNG - Installation

Vous pouvez facilement convertir des fichiers XPS ou OXPS en image JPG ou PNG avec quelques appels API simples. L’API Aspose.Page for .NET inclut différentes fonctionnalités pour fonctionner avec XPS, OXPS et plusieurs autres formats de fichiers pris en charge. Vous pouvez facilement télécharger le fichier ZIP à partir de la section Téléchargements, ou vous pouvez l’installer via NuGet Gestionnaire de packages avec la commande suivante :

Install-Package Aspose.Page -Version 20.10.0

Après avoir configuré l’API, vous pouvez travailler efficacement avec des fichiers XPS ou OXPS dans vos applications .NET.

Convertir XPS, OXPS en image JPG en utilisant C# ou VB.NET

Les fichiers JPG sont célèbres en raison de leur prise en charge dans tous les environnements système. Vous pouvez convertir un fichier XPS ou OXPS en une image JPG par programmation à l’aide de C# ou VB.NET. Vous devez suivre les étapes suivantes pour la conversion d’image XPS ou OXPS en JPG :

  1. Charger le fichier d’entrée XPS ou OXPS
  2. Initialiser l’objet JpegSaveOptions
  3. Spécifiez SmoothingMode, Resolution et PageNumbers pour le rendu
  4. Enregistrer l’image JPG de sortie

Le code suivant montre comment convertir XPS ou OXPS en image JPG en utilisant le langage C# :

// Fichier d'entrée
string inputFileName = dataDir + "input.xps";
//Fichier de sortie 
string outputFileName = dataDir + "XPStoImage_out.jpeg";
// Initialiser le flux d'entrée XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
    // Charger le document XPS à partir du flux
    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
    // ou chargez le document XPS directement à partir du fichier. Aucun xpsStream n'est alors nécessaire.
    // Document XpsDocument = nouveau XpsDocument(inputFileName, new XpsLoadOptions());

    // Initialisez l'objet d'options avec les paramètres nécessaires.
    JpegSaveOptions options = new JpegSaveOptions()
    {
        SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
        Resolution = 300
    };

    // Créer un périphérique de rendu pour le format JPG
    ImageDevice device = new ImageDevice();

    document.Save(device, options);

    // Itérer à travers les partitions de documents (documents fixes, en termes XPS)
    for (int i = 0; i < device.Result.Length; i++)
        // Itérer à travers les pages de partition
        for (int j = 0; j < device.Result[i].Length; j++)
        {
            // Initialiser le flux de sortie d'image
            using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) +
                Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
                Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
                // Écrire une image
                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
        }
}

Convertir XPS, OXPS en image PNG en utilisant C# ou VB.NET

Vous devrez peut-être convertir un fichier XPS ou OXPS en PNG en utilisant C# ou VB.NET avec Aspose.Page for l’API .NET. Vous devez suivre les étapes ci-dessous pour la conversion XPS en PNG :

  1. Charger le fichier XPS ou OXPS d’entrée
  2. Initialiser PngSaveOptions Objet
  3. Définir l’image Résolution ou PageNumbers pour le rendu
  4. Enregistrer la sortie PNG image

L’extrait de code ci-dessous montre comment convertir un fichier XPS ou OXPS en image PNG par programmation à l’aide de C# :

// Fichier d'entrée
string inputFileName = dataDir + "input.xps";
//Fichier de sortie 
string outputFileName = dataDir + "XPStoImage_out.png";
// Initialiser le flux d'entrée XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
    // Charger le document XPS à partir du flux
    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
    // ou chargez le document XPS directement à partir du fichier. Aucun xpsStream n'est alors nécessaire.
    // Document XpsDocument = nouveau XpsDocument(inputFileName, new XpsLoadOptions());

    // Initialisez l'objet d'options avec les paramètres nécessaires.
    PngSaveOptions options = new PngSaveOptions()
    {
        SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
        Resolution = 300
    };

    // Créer un périphérique de rendu pour le format PNG
    ImageDevice device = new ImageDevice();

    document.Save(device, options);

    // Itérer à travers les partitions de documents (documents fixes, en termes XPS)
    for (int i = 0; i < device.Result.Length; i++)
        // Itérer à travers les pages de partition
        for (int j = 0; j < device.Result[i].Length; j++)
        {
            // Initialiser le flux de sortie d'image
            using (Stream imageStream = System.IO.File.Open(Path.GetDirectoryName(outputFileName) +
                Path.GetFileNameWithoutExtension(outputFileName) + "_" + (i + 1) + "_" + (j + 1) +
                Path.GetExtension(outputFileName), System.IO.FileMode.Create, System.IO.FileAccess.Write))
                // Écrire une image
                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
        }
}

Conclusion

Dans cet article, nous avons appris comment convertir un fichier XPS ou OXPS en image JPG ou PNG en utilisant C# ou VB.NET par programmation. De même, plusieurs autres API de format de fichier sont prises en charge par Aspose.Page for .NET. Vous pouvez vous référer à la Product Documentation ou API References pour en savoir plus sur les fonctionnalités offertes par l’API. De plus, vous pouvez toujours nous contacter via les Forums d’assistance gratuits. N’hésitez pas à partager vos commentaires ou questions!

Voir également