XPS OXPS para PNG Imagem JPG C#

O formato de arquivo XPS é frequentemente usado em aplicativos de processamento de arquivos. Você pode converter a imagem XPS ou OXPS para imagem JPG ou PNG programaticamente com C# ou VB.NET em seus aplicativos baseados na estrutura .NET. Vamos percorrer os seguintes cenários para saber mais sobre a conversão XPS:

XPS, OXPS para JPG ou PNG Image Converter API – Instalação

Você pode facilmente converter arquivos XPS ou OXPS para imagem JPG ou PNG com algumas chamadas de API simples. Aspose.Page for .NET API inclui diferentes recursos para trabalhar com XPS, OXPS e vários outros formatos de arquivo suportados. Você pode facilmente baixar o arquivo ZIP da seção Downloads, ou instalá-lo via NuGet Package Manager com o seguinte comando:

Install-Package Aspose.Page -Version 20.10.0

Depois de configurar a API, você pode trabalhar eficientemente com arquivos XPS ou OXPS em seus aplicativos .NET.

Converter XPS, OXPS para imagem JPG usando C# ou VB.NET

Os arquivos JPG são famosos por causa de seu suporte em todos os ambientes do sistema. Você pode converter um arquivo XPS ou OXPS em uma imagem JPG programaticamente usando C# ou VB.NET. Você deve seguir as seguintes etapas para conversão de imagem XPS ou OXPS para JPG:

  1. Carregar arquivo XPS ou OXPS de entrada
  2. Inicialize o objeto JpegSaveOptions
  3. Especifique SmoothingMode, Resolution e PageNumbers para renderizar
  4. Salvar imagem JPG de saída

O código a seguir mostra como converter XPS ou OXPS para imagem JPG usando a linguagem C#:

// Arquivo de entrada
string inputFileName = dataDir + "input.xps";
//Arquivo de saída 
string outputFileName = dataDir + "XPStoImage_out.jpeg";
// Inicializar o fluxo de entrada XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
    // Carregar documento XPS do fluxo
    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
    // ou carregue o documento XPS diretamente do arquivo. Nenhum xpsStream é necessário então.
    // Documento XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

    // Inicialize o objeto de opções com os parâmetros necessários.
    JpegSaveOptions options = new JpegSaveOptions()
    {
        SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
        Resolution = 300
    };

    // Criar dispositivo de renderização para o formato JPG
    ImageDevice device = new ImageDevice();

    document.Save(device, options);

    // Iterar através de partições de documentos (documentos fixos, em termos XPS)
    for (int i = 0; i < device.Result.Length; i++)
        // Iterar através de páginas de partição
        for (int j = 0; j < device.Result[i].Length; j++)
        {
            // Inicializar o fluxo de saída de imagem
            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))
                // Gravar imagem
                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
        }
}

Converter XPS, OXPS para imagem PNG usando C# ou VB.NET

Você pode precisar converter um arquivo XPS ou OXPS para PNG usando C# ou VB.NET com Aspose.Page para .NET API. Você precisa seguir as etapas abaixo para a conversão de XPS para PNG:

  1. Carregar arquivo XPS ou OXPS de entrada
  2. Inicialize o objeto PngSaveOptions
  3. Definir imagem Resolution ou PageNumbers para renderização
  4. Salvar imagem PNG de saída

O trecho de código abaixo mostra como converter arquivo XPS ou OXPS para imagem PNG programaticamente usando C#:

// Arquivo de entrada
string inputFileName = dataDir + "input.xps";
//Arquivo de saída 
string outputFileName = dataDir + "XPStoImage_out.png";
// Inicializar o fluxo de entrada XPS
using (Stream xpsStream = File.Open(inputFileName, FileMode.Open, FileAccess.Read))
{
    // Carregar documento XPS do fluxo
    XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
    // ou carregue o documento XPS diretamente do arquivo. Nenhum xpsStream é necessário então.
    // Documento XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

    // Inicialize o objeto de opções com os parâmetros necessários.
    PngSaveOptions options = new PngSaveOptions()
    {
        SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality,
        Resolution = 300
    };

    // Criar dispositivo de renderização para o formato PNG
    ImageDevice device = new ImageDevice();

    document.Save(device, options);

    // Iterar através de partições de documentos (documentos fixos, em termos XPS)
    for (int i = 0; i < device.Result.Length; i++)
        // Iterar através de páginas de partição
        for (int j = 0; j < device.Result[i].Length; j++)
        {
            // Inicializar o fluxo de saída de imagem
            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))
                // Gravar imagem
                imageStream.Write(device.Result[i][j], 0, device.Result[i][j].Length);
        }
}

Conclusão

Neste artigo, aprendemos como converter um arquivo XPS ou OXPS em imagem JPG ou PNG usando C# ou VB.NET programaticamente. Da mesma forma, várias outras APIs de formato de arquivo são suportadas pelo Aspose.Page para .NET. Você pode consultar a Documentação do produto ou Referências da API para saber mais sobre os recursos oferecidos pela API. Além disso, você sempre pode entrar em contato conosco através dos Fóruns de suporte gratuitos. Sinta-se à vontade para compartilhar seus comentários ou dúvidas!

Veja também