Conversor de SVG para PNG

Converta um arquivo SVG ou código colado em PNG em 1×, 2×, 4× ou uma largura exata, com fundo transparente, branco ou personalizado.

A conversão acontece por completo no seu navegador. Seu SVG nunca é enviado para um servidor.

Escolha o SVG e o tamanho

Solte um arquivo SVG aqui

.svg · até ~5 MB

Escala
Fundo

Como funciona a conversão

Um SVG é um conjunto de instruções de desenho, não uma grade de pixels. Para gerar um PNG, a ferramenta entrega o código ao decodificador de imagens do navegador, que faz o layout e pinta em um canvas do tamanho escolhido, e então codifica esse canvas como PNG — tudo localmente, sem bibliotecas.

O processo, passo a passo
O código vira um Blob do tipo image/svg+xml com uma URL de objeto, é carregado em um elemento Image e, ao concluir o carregamento, é desenhado em um canvas com o seu tamanho alvo. Antes disso a ferramenta reescreve o width/height do svg raiz para esse tamanho, então o navegador rasteriza exatamente na resolução pedida em vez de ampliar um bitmap pequeno.
De onde vem o tamanho
Se o arquivo declara width e height, essas são as medidas nativas em 1×. Se declara apenas um viewBox, o próprio viewBox fornece a proporção e o tamanho base — padrão comum em conjuntos de ícones. Se não declara nada disso, não há em que se apoiar, então a ferramenta usa 512 px quadrados e avisa na nota abaixo dos botões.
O que o ambiente isolado bloqueia
A rasterização passa por um elemento img e os navegadores executam imagens SVG em modo restrito: não buscam imagens externas, web fonts, CSS remoto nem scripts, e não pintam o conteúdo de foreignObject. Um gradiente definido dentro do seu arquivo sobrevive; uma fonte trazida por @import ou um PNG linkado, não. URIs data: em linha são seguras porque não geram requisição de rede. É também por isso que a exportação pode falhar de forma visível: um canvas que recebeu um recurso de outra origem fica contaminado e canvas.toBlob() recusa a leitura — esse caminho é detectado e informado em vez de travar.

Perguntas frequentes

Por que meu gradiente, fonte ou sombra sumiu do PNG?

Quando um SVG é rasterizado por meio de um elemento de imagem — que é exatamente como o navegador transforma código vetorial em pixels — ele roda em modo bloqueado: não consegue carregar imagens, web fonts, folhas de estilo nem scripts de fora do próprio arquivo, e o HTML de foreignObject também não é pintado. Tudo o que o arquivo busca por referência desaparece. Código autocontido (traçados inline, gradientes internos, texto com família genérica, URIs data: para imagens embutidas) é rasterizado com fidelidade.

Qual escala devo exportar para ícones de aplicativo?

Use 2× ou 4×. Um ícone de 24 px rasterizado em 2× gera um PNG de 48 px que continua nítido em telas retina e de alta densidade; em 4× são 96 px, o que já atende os maiores tamanhos de inicializador. Se você precisa de uma medida exata, tipo 512 px, digite-a na caixa de largura personalizada: a altura segue a proporção do próprio arquivo.

Posso converter um PNG de volta em SVG?

Não, este sentido é só de ida. De SVG para PNG você joga fora a descrição vetorial e fica com pixels, e não há como recuperar curvas, texto e estrutura a partir de um raster de forma confiável. Existem ferramentas de vetorização, mas elas estimam; este conversor rasteriza com fidelidade, não vetoriza.

O fundo transparente continua transparente?

Sim. PNG tem canal alfa, então na opção transparente o arquivo exportado não tem camada de fundo nenhuma: apenas as formas que você desenhou. Escolha branco ou uma cor personalizada quando precisar de uma base sólida, por exemplo para destinos que só aceitam JPEG ou para slides.

Algo é enviado para um servidor?

Não. Seu código é analisado com DOMParser, desenhado em um canvas e codificado com canvas.toBlob, tudo localmente. Nenhuma requisição sai da página, nada é armazenado e a ferramenta continua funcionando offline depois que a página carrega.