Converter SVG para JPG PNG Imagem C#

SVG (Scalable Vector Graphics) é um formato amplamente utilizado para gráficos vetoriais. Embora o SVG ofereça escalabilidade e renderização de alta qualidade, você pode frequentemente precisar converter arquivos SVG para formatos de imagem raster, como JPG ou PNG, para uma compatibilidade mais ampla, como a incorporação em relatórios, páginas da web ou aplicativos móveis. Neste post do blog, vamos guiá-lo pelos passos para converter SVG para JPG e PNG em C#.

Conversor de SVG para Imagem - Instalação da API em C#

Para converter SVG para formato de imagem raster, você precisa instalar Conholdate.Total for .NET do New Releases ou executar o seguinte comando de instalação do NuGet:

PM> NuGet\Install-Package Conholdate.Total

Por que converter SVG em formatos de imagem?

Existem várias razões pelas quais desenvolvedores e designers precisam converter arquivos SVG em formatos de imagem raster, como JPG e PNG:

  • Compatibilidade: Muitos aplicativos e plataformas não suportam SVG, mas suportam prontamente JPG ou PNG.
  • Desempenho: Imagens rasterizadas são renderizadas mais rapidamente em certas plataformas e consomem menos poder de processamento em comparação com a renderização dinâmica de SVG.
  • Impressão: SVG pode perder detalhes ou falhar em renderizar corretamente nos formatos de impressão, enquanto PNG e JPG oferecem qualidade pronta para impressão.
  • Integração: Imagens rasterizadas são frequentemente mais fáceis de incorporar em documentos, e-mails e apresentações multimídia.

Agora, vamos nos aprofundar na implementação.

Converter SVG para JPG em C#

Você pode converter SVG para o formato JPG em C# com os seguintes passos:

  • Load any input SVG or define the SVG code.
  • Especifique o caminho onde o arquivo JPG será salvo.
  • Use ImageSaveOptions para definir o formato de saída como JPEG.
  • Chame o ConvertSVG para processar a conversão.

O seguinte exemplo mostra como converter SVG para JPG em C#:

// Prepare SVG code
var code = "<svg xmlns='http://www.w3.org/2000/svg'>" +
            "<circle cx ='100' cy ='100' r ='55' fill='green' stroke='red' stroke-width='10' />" +
            "</svg>";

// Prepare a path for converted file saving
string savePath = Path.Combine(dataDir, "svgtojpgimage.jpg");

// Crie uma instância da classe ImageSaveOptions
var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Jpeg);

// Converter SVG para JPG
Aspose.Html.Converters.Converter.ConvertSVG(code, ".", options, savePath);

Converter SVG para Imagem PNG em C#

Para converter SVG em PNG, o processo é semelhante, mas requer a alteração do formato de saída para PNG:

  • Leia o SVG fonte ou crie qualquer imagem SVG.
  • Forneça o caminho do arquivo para gravar o arquivo PNG.
  • Crie uma instância da classe ImageSaveOptions e especifique PNG como o formato desejado.
  • Converta SVG para PNG com o método ConvertSVG.

O trecho de código abaixo demonstra como converter SVG para PNG em C#:

// Prepare SVG code
var code = "<svg xmlns='http://www.w3.org/2000/svg'>" +
            "<circle cx ='100' cy ='100' r ='55' fill='green' stroke='red' stroke-width='10' />" +
            "</svg>";

// Prepare a path for converted file saving
string savePath = Path.Combine(dataDir, "image.png");

// Crie uma instância da classe ImageSaveOptions
var options = new Aspose.Html.Saving.ImageSaveOptions(Aspose.Html.Rendering.Image.ImageFormat.Png);

// Converter SVG para PNG
Aspose.Html.Converters.Converter.ConvertSVG(code, ".", options, savePath);

Licença de Avaliação Gratuita

Você pode solicitar uma licença temporária gratuita para testar a API em sua capacidade total.

Resumindo

Converter SVG para formatos de imagem raster, como JPG e PNG, é uma necessidade comum em várias aplicações. Se você precisar de imagens de alta qualidade para aplicações web, relatórios ou projetos multimídia, os trechos de código fornecidos garantem uma conversão confiável de SVG para imagem. Em caso de quaisquer preocupações, por favor, escreva para nós no forum.

Ver também