
come convertire XPS in JPG in C#
Il formato di documento XPS consente di condividere, creare, stampare e salvare facilmente documenti digitali, ma potrebbe essere necessario installare il software di supporto. Se sei un programmatore .NET e potresti voler esportare un file XPS in formato JPG/JPEG programmaticamente, questo articolo spiegherà come convertire XPS in JPG in C#.
I seguenti punti saranno trattati in questo articolo:
C# .NET API per convertire XPS in JPG
In questo articolo, useremo Conholdate.Total per .NET per convertire XPS in JPG. Questa libreria ti consente di creare, modificare e salvare documenti XPS esistenti e nuovi. Pertanto, puoi scaricare il DLL o installare questa API di conversione XPS utilizzando NuGet.
Install-Package Conholdate.Total
How to convert XPS to JPG/JPEG programmatically in C#
L’API di conversione XPS consente di convertire i tuoi file XPS in JPG.
I seguenti sono i passaggi per convertire un file XPS in un’immagine JPG:
- Inizializza l’oggetto della classe Stream per i documenti XPS.
- Crea un’istanza della classe XpsDocument utilizzando lo stream XPS (creato nel passaggio precedente) e l’oggetto della classe XpsLoadOptions come parametri.
- Inizializza l’oggetto della classe JpegSaveOptions con i parametri necessari.
- Crea un’istanza della ImageDevice classe.
- Salva il JPG nell’oggetto ImageDevice richiamando il XpsDocument.Save(Device device, SaveOptions options).
- Usa il ImageDevice per salvare il JPG sul disco (come mostrato nel campione di codice qui sotto).
Il seguente esempio di codice mostra come convertire XPS in JPG utilizzando C#:
string inputFileName = "input.xps";
//Outut file
string outputFileName = "XPStoImage_out.jpg";
// Inizializza il flusso di input XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
// Carica documento XPS dal flusso
XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
// Inizializza l'oggetto delle opzioni con i parametri necessari.
JpegSaveOptions options = new JpegSaveOptions()
{
SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
Resolution = 300,
PageNumbers = new int[] { 1, 2, 6 }
};
// Crea un dispositivo di rendering per l'immagine
ImageDevice device = new ImageDevice();
document.Save(device, options);
// Iterare attraverso le partizioni del documento (documenti fissi, in termini XPS)
for (int i = 0; i < device.Result.Length; i++)
// Iterare attraverso le pagine di partizione
for (int j = 0; j < device.Result[i].Length; j++)
{
// Inizializza il flusso di output dell'immagine
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))
// Write image
imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
}
}
Ottieni una licenza gratuita
Puoi acquisire una free temporary license per testare l’API senza limitazioni di valutazione.
Conclusione
Per concludere questo articolo, speriamo che tu abbia imparato come convertire XPS in JPG in C# utilizzando un’API di conversione XPS. Puoi visitare la documentazione per esplorare altre funzionalità della libreria di conversione XPS.
Ask a question
Puoi farci sapere le tue domande o richieste sul nostro forum.