Convertidor de SVG a PNG

Convierte un archivo SVG o el código SVG que pegues en un PNG al tamaño que elijas, con fondo transparente o de color, sin salir del navegador.

La conversión ocurre por completo en tu navegador. Tu SVG nunca se sube a un servidor.

Elige el SVG y el tamaño

Suelta un archivo SVG aquí

.svg · hasta ~5 MB

Escala
Fondo

Cómo funciona la conversión

Un SVG es un conjunto de instrucciones de dibujo, no una rejilla de píxeles. Para obtener un PNG, la herramienta entrega el código al decodificador de imágenes del navegador, que lo compone y lo pinta en un lienzo del tamaño que pidas y luego codifica ese lienzo como PNG — todo local y sin bibliotecas.

El proceso, paso a paso
El código se convierte en un Blob de tipo image/svg+xml con una URL de objeto, se carga en un elemento Image y, al terminar la carga, se dibuja en un lienzo con tu tamaño objetivo. Antes de eso la herramienta reescribe el width/height de la raíz svg con ese tamaño, de modo que el navegador rasteriza exactamente a la resolución pedida en lugar de escalar un mapa de bits pequeño.
De dónde sale el tamaño
Si el archivo declara width y height, esas son sus medidas nativas a 1×. Si solo declara un viewBox, el propio viewBox aporta la relación de aspecto y el tamaño base — el patrón habitual de los juegos de iconos. Si no declara nada de eso, no hay nada fiable que medir, así que la herramienta usa 512 px cuadrados y lo avisa en la nota bajo los botones.
Lo que bloquea el entorno aislado
La rasterización pasa por un elemento img y los navegadores ejecutan las imágenes SVG en modo restringido: no cargan imágenes externas, fuentes web, CSS remoto ni scripts, y tampoco pintan el contenido de foreignObject. Un degradado definido dentro de tu archivo sobrevive; una fuente importada por @import o un PNG enlazado, no. Las URI data: en línea son seguras porque no implican petición de red. Por eso mismo la exportación puede fallar de forma visible: un lienzo que recibió un recurso de otro origen queda contaminado y canvas.toBlob() se niega a leerlo — ese caso se detecta y se te informa en lugar de romper la herramienta.

Preguntas frecuentes

¿Por qué faltan degradados, fuentes o sombras en el PNG?

Cuando un SVG se rasteriza a través de un elemento de imagen —que es exactamente como el navegador convierte el código vectorial en píxeles— se ejecuta en un modo bloqueado: no puede cargar imágenes, fuentes web, hojas de estilo ni scripts de fuera del propio archivo, y el HTML de foreignObject tampoco se pinta. Todo lo que tu archivo obtiene por referencia desaparece. El código autocontenido (trazados inline, degradados internos, texto con una familia genérica, URI data: para imágenes incrustadas) se rasteriza sin problemas.

¿Qué escala debo exportar para iconos de aplicación?

Usa 2× o 4×. Un icono de 24 px rasterizado a 2× da un PNG de 48 px que se ve nítido en pantallas retina y de alta densidad; a 4× son 96 px, suficiente para los tamaños de lanzador más grandes. Si necesitas una medida exacta como 512 px, escríbela en el cuadro de ancho personalizado: el alto sigue la relación de aspecto del propio archivo.

¿Puedo convertir un PNG de vuelta a SVG?

No, este camino es de un solo sentido. De SVG a PNG se descarta la descripción vectorial y se conservan píxeles, y no hay forma fiable de recuperar curvas, texto y estructura a partir de un mapa de bits. Existen herramientas de trazado, pero adivinan; este conversor rasteriza con fidelidad, no traza.

¿El fondo transparente se mantiene transparente?

Sí. PNG tiene canal alfa, así que con la opción transparente el archivo exportado no lleva ninguna capa de fondo: solo las formas que dibujaste. Elige blanco o un color personalizado cuando necesites una base sólida, por ejemplo para destinos que solo aceptan JPEG o para diapositivas.

¿Se sube algo a un servidor?

No. Tu código se analiza con DOMParser, se dibuja en un lienzo y se codifica con canvas.toBlob, todo localmente. No sale ninguna petición, no se guarda nada y la herramienta funciona sin conexión una vez cargada la página.