Características Principales de Nuestro Formateador SVG
- **Modo Embellecer** con indentación inteligente, ajuste de líneas y alineación de atributos
- **Modo Minificar** que elimina espacios en blanco, comentarios y metadatos redundantes
- Formateo estilo Prettier y optimización estilo SVGO bajo el capó
- Estilo de indentación configurable (espacios o tabulaciones) y tamaño de indentación
- Columna de ajuste opcional para mantener rutas y atributos largos ordenados
- Estilo consistente de fin de línea (LF / CRLF) para diferencias limpias entre sistemas operativos
- Arrastra y suelta archivos `.svg` de hasta 5 MB o pega marcado SVG en línea
- Procesamiento 100% del lado del cliente — tu arte nunca sale del navegador
- Copia con un clic o descarga del resultado formateado (`.formatted.svg`) o minimizado (`.min.svg`)
- Interfaz de usuario responsiva que funciona bien en portátiles, escritorios y tabletas
🔧 Cómo Formatear o Minimizar SVG: Guía Rápida for svg-formatter
1. Pegar o Cargar SVG
📥 Arrastra y suelta tu archivo `.svg` o pega el marcado SVG crudo en el editor. La herramienta detecta automáticamente el contenido estándar `image/svg+xml`.
2. Elegir Formatear o Minimizar
✨ Selecciona **Formatear** para marcado legible por humanos (ideal para revisiones y control de versiones) o **Minimizar** para el tamaño de archivo más pequeño posible.
3. Ajustar Opciones de Formateo
⚙️ Ajusta **Estilo de Sangría** (espacios o tabulaciones), **Tamaño de Sangría** y opcionalmente **Ajuste / Longitud de Línea**. Estos se mapean directamente a las configuraciones del formateador subyacente.
4. Vista Previa y Exportar
👀 Inspecciona el código SVG optimizado, pruébalo rápidamente en tu proyecto, luego cópialo al portapapeles o descarga el resultado como un nuevo archivo `.svg`.
Detalles Técnicos
Motor de Embellecimiento (Modo Formatear)
El modo Formatear utiliza un motor estilo Prettier ajustado para marcado XML de SVG. Se enfoca en legibilidad y diferencias estables y predecibles.
| Aspecto | Comportamiento | Notas |
|---|---|---|
| Estilo de Sangría | Espacios o Tabulaciones | Configurable mediante **Estilo de Sangría** (se mapea a `indentStyle`). |
| Tamaño de Sangría | 1–8 espacios | Controla el ancho de anidación al usar espacios (se mapea a `indentSize`). |
| Ajuste / Longitud de Línea | 0–120 columnas | `0` desactiva el ajuste; de lo contrario, las líneas largas se ajustan alrededor de la columna elegida (se mapea a `wrapLineLength`). |
| Fin de Línea | LF (`\n`) o CRLF (`\r\n`) | Mantiene los fines de línea consistentes entre sistemas operativos (se mapea a `endOfLine`). |
| Idioma de Salida | SVG estilo XML | Mantiene la estructura XML compatible con SVG para una inserción segura. |
Canal de Minificación (Modo Minificar)
El modo minificar utiliza un canal inspirado en SVGO centrado en la reducción de tamaño mientras preserva la salida visual.
| Paso | Descripción | Impacto |
|---|---|---|
| Eliminar comentarios | Elimina nodos de comentario `<!-- ... -->` que no afectan el renderizado. | Archivos más pequeños, diferencias más limpias. |
| Eliminar espacios en blanco redundantes | Comprime espacios, tabulaciones y saltos de línea innecesarios. | Grandes beneficios para SVGs exportados desde editores verbosos. |
| Recortar metadatos | Opcionalmente elimina nodos de metadatos que no se renderizan cuando es seguro. | Bueno para recursos de producción públicos. |
| Normalizar atributos | Simplifica y reordena atributos de manera estable. | Salida más compacta, mejor capacidad de almacenamiento en caché. |
Codificación y Compatibilidad
La salida es SVG UTF-8 compatible con navegadores y herramientas modernos, alineada con la especificación SVG 2.
Rendimiento y Límites (Navegador de Escritorio Típico)
| Tipo de Archivo | Tamaño de Entrada | Tiempo de Embellecimiento | Tiempo de Minificación | Reducción de Tamaño Típica |
|---|---|---|---|---|
| Icono | 5 KB | ⚡ < 15 ms | ⚡ < 20 ms | ≈ 25–40% |
| Ilustración | 100 KB | ⚡ < 60 ms | ⚡ < 90 ms | ≈ 40–55% |
| Gráfico Hero | 500 KB | ⏱️ < 300 ms | ⏱️ < 450 ms | ≈ 50–60% |
Alternativas CLI para Usuarios Avanzados
¿Prefieres flujos de trabajo en terminal o integración con CI? Combina Prettier y SVGO para un comportamiento similar a esta herramienta:
Linux / 🍎 macOS
Embellecer SVG con Prettier
npx prettier --parser xml --print-width 80 --tab-width 2 --write input.svgAplica indentación consistente y ajuste de líneas a tu marcado SVG.
Minificar SVG con SVGO
npx svgo input.svg -o input.min.svgElimina comentarios, metadatos y espacios en blanco redundantes para archivos más pequeños.
Windows (PowerShell o CMD)
Formatear SVG usando xmlstarlet (a través de WSL o nativo)
xmlstarlet fo --indent-spaces 2 input.svg > pretty.svgFormatea SVG/XML con una indentación de 2 espacios.
Minificar SVG con SVGO (sin instalación global)
npx svgo input.svg -o min.svgEjecuta SVGO directamente a través de `npx` para optimizaciones puntuales.
Aplicaciones Prácticas
Rendimiento Web y Paquetes Frontend
- Reduce las cargas útiles de SVG en sistemas de diseño, conjuntos de iconos y hojas de sprites.
- Incluye SVG minificado en HTML/CSS para ahorrar solicitudes HTTP adicionales.
- Mejora las Core Web Vitals reduciendo las ilustraciones hero en páginas de destino.
<img src="/assets/hero.min.svg" alt="Gráfico hero optimizado" />.icon-check { background-image: url('data:image/svg+xml;utf8,<svg ...>'); }Entrega de Diseño y Control de Versiones
- Embellece SVG exportado antes de la revisión de código para que las diferencias sean legibles.
- Mantén un `.formatted.svg` para colaboración y un `.min.svg` para producción.
- Aplica indentación consistente y orden de atributos en todo el sistema de diseño.
Móviles, Correos y Aplicaciones Híbridas
- Minifica SVGs en línea en correos HTML para campañas más ligeras.
- Reduce el tamaño del paquete de la aplicación en React Native / Capacitor / Ionic al incluir muchos iconos.
- Ahorra ancho de banda para usuarios con conexiones lentas o con límite de datos.
❓ Frequently Asked Questions
❓¿Qué es el formateo de SVG?
📏¿La minificación alterará la apariencia de mi SVG?
🔒¿Se sube mi SVG a un servidor?
🚀¿Cuánto tamaño puede ahorrar la minificación?
⚠️¿Puede la eliminación de `<metadatos>` o comentarios romper mi flujo de trabajo?
Pro Tips
Mantén un `icon.formatted.svg` sin minificar en tu repositorio para diferencias limpias, luego genera `icon.min.svg` como parte de tu paso de compilación.
Siempre incluye elementos significativos `<title>` y `<desc>` antes de minificar para mantener tus SVGs accesibles para lectores de pantalla.
Combina la minificación SVG con compresión HTTP (Gzip/Brotli) para exprimir aún más bytes de ilustraciones y gráficos pesados.
Para conjuntos de iconos, considera una estrategia de sprite: minifica una vez, luego referencia iconos mediante `<use>` en lugar de duplicar código SVG en todas partes.
Additional Resources
Other Tools
- Embellecedor CSS
- Embellecedor HTML
- Embellecedor JavaScript
- Embellecedor PHP
- Selector de Color
- Extractor de Sprites
- Decodificador Base64
- Codificador Base64
- Formateador C#
- Formateador CSV
- Dockerfile Formatter
- Formateador Elm
- Formateador ENV
- Formateador Go
- Formateador GraphQL
- Formateador HCL
- Formateador INI
- Formateador JSON
- Formateador LaTeX
- Formateador Markdown
- Formateador Objective-C
- Php Formatter
- Formateador Proto
- Formateador Python
- Formateador Ruby
- Formateador Rust
- Formateador Scala
- Formateador de Scripts de Shell
- Formateador SQL
- Formateador Swift
- Formateador TOML
- Typescript Formatter
- Formateador XML
- Formateador YAML
- Formateador Yarn
- Minificador CSS
- Html Minifier
- Javascript Minifier
- Minificador JSON
- Minificador XML
- Visor de Encabezados HTTP
- PDF a Texto
- Probador de Expresiones Regulares
- Verificador de Posición en SERP
- Consulta Whois