¿Puede Android usar un SVG directamente como drawable?
Un recurso VectorDrawable usa el vocabulario XML de Android: un elemento vector con un viewport, unas dimensiones de visualización y trazados de dibujo. Cambiar el nombre de logo.svg a logo.xml no traduce esos elementos. SVG usa otros nombres para los rellenos, los trazos y las transformaciones, y admite funciones que este exportador rechaza a propósito.
Usa el convertidor de SVG a Android para un icono de interfaz sencillo o una ilustración plana. Acepta un SVG que subas o uno de tus propios resultados desbloqueados. Si partes de un mapa de bits, traza primero la imagen a vector, revisa los contornos y luego exporta. Convertir recursos no vuelve a trazar la imagen ni elimina el requisito de desbloquear un resultado existente.
Un ejemplo pequeño que puedes reproducir
Guarda este triángulo como triangle.svg y súbelo. Elige el nombre de recurso ic_triangle y un lado más largo de 24 dp.
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
<path fill="#fa643c" d="M12 2L22 22H2Z"/>
</svg>
El XML descargado contiene un viewport de 24 por 24, unas dimensiones de visualización de 24 dp y un solo trazado. Su relleno naranja se convierte en el color de Android con el alfa delante, #fffa643c. Pon ic_triangle.xml en app/src/main/res/drawable/. En un layout, usa android:src="@drawable/ic_triangle"; en el código de la app, usa el identificador de recurso drawable correspondiente.
El viewport describe la geometría. Las dimensiones en dp describen el tamaño de visualización previsto del drawable. Un SVG rectangular conserva su proporción: elegir un lado más largo de 48 dp no lo estira hasta convertirlo en un cuadrado. El nombre del recurso empieza con una letra minúscula y puede contener letras minúsculas, números y guiones bajos.
¿Qué se conserva al convertir?
Nuestro convertidor admite trazados y formas geométricas básicas, colores sólidos, opacidad de relleno, estilos de trazo compatibles y las reglas de relleno nonzero y even-odd. Aplana las transformaciones compatibles en las coordenadas de los trazados. El relleno even-odd es el motivo por el que esta exportación está pensada para API 24 y posteriores. No crea envoltorios de compatibilidad para apps más antiguas.
El texto, los degradados, las máscaras, los recortes, las imágenes incrustadas y los efectos necesitan otro paso de preparación. Convierte el texto en contornos en tu editor vectorial. Convierte los trazos transformados en contornos si la transformación escala sus ejes de forma distinta. La opacidad de grupo puede cambiar las formas que se superponen, así que el exportador la rechaza en lugar de aplicar la opacidad por separado y cambiar el dibujo. El resultado indica todo lo que se eliminó por no ser seguro.
Para un diseño detallado, una exportación a PNG puede ser un recurso más adecuado. Un número muy grande de trazados puede costar tiempo de renderizado aunque el archivo sea técnicamente un vector. Simplifica los puntos innecesarios y prueba al tamaño real en pantalla.
Comprueba el resultado en la app
Compila el recurso en Android Studio y revísalo sobre fondos claros y oscuros. Comprueba los huecos dentro de las letras, los trazos finos, los colores previstos y la transparencia. Compara el original y el drawable a tamaños pequeños, donde los detalles menores importan más. Que el XML compile confirma que el recurso es válido; el renderizado en el dispositivo y los ajustes de tinte de tu app siguen determinando su aspecto final.
Para un icono del launcher, usa el generador de iconos de app. Los iconos del launcher tienen requisitos de densidad y de capas adaptables que una exportación normal de drawable no incluye.