SVG: Scalable Vector Graphics
SVG [20], como indica su nombre, es un formato para crear gráficos vectoriales escalables. SVG es una recomendación del W3C. Es el equivalente, basado en estándares, a la opción comercial Flash (de Macromedia, que también está basado en vectores). En el caso de SVG el contenido de los ficheros es XML, mientras que en Flash el formato de los ficheros es binario.
SVG permite la utilización de tres tipos de objetos gráficos:
-
Objetos gráficos vectoriales (líneas, elipses, rectángulos, etc.). Estos pueden ser agrupados, formateados, transformados y compuestos para su visualización.
-
Imágenes.
-
Texto.
Algunas de las características que proporciona SVG son:
-
Renderizado con antialiasing. El renderizado consiste en aplicar texturas, iluminación, etc. a una escena (es decir, colorear los elementos) mientras que el antialiasing es la técnica usada para conseguir ver una línea recta o curva totalmente uniforme (evitando ver pequeños escalones).
-
Patrones de relleno y gradientes.
-
Filtros y efectos avanzados.
-
Permite realizar animaciones.
-
Permite escalado de los gráficos.
-
Los gráficos no pierden calidad cuando se hace zoom.
-
Pueden mostrarse de forma progresiva (igual que los GIF), no teniendo que esperar a que todo el documento sea descargado.
-
Pueden distribuirse en formato comprimido GZIP para la reducción del tiempo de descarga.
-
Pueden ser indexados y buscados debido a que su contenido es XML y es textual.
-
Pueden ser transformados por hojas de estilos (XSL o CSS).
-
Permite integración con otras tecnologías XML del W3C y es compatible con:
-
XML 1.0.
-
XML Namespaces.
-
CSS.
-
XSL.
-
DOM nivel 1 y 2.
-
HTML 4 y XHTML 1.0.
SVG, al ser un formato XML, donde mejor se integra es en otros documentos XML. Los gráficos SVG se pueden incluir dentro de documentos XHTML (la versión XML de HTML) e incluso en HTML (en el caso de HTML el código SVG va fuera del documento HTML y se hace referencia a él mediante una etiqueta especial).
Para poder visualizar gráficos SVG en una página Web actualmente existen dos posibilidades:
-
Utilizar un plugin para el navegador: Actualmente el plugin más potente es el que proporciona gratuitamente Adobe que está disponible para las principales plataformas (Windows, Linux, Solaris, Mac OS). También existen otros plugins como KSVG para el navegador Konqueror de KDE.
-
Mozilla SVG: el proyecto Mozilla SVG intenta hacer de este navegador un motor nativo de de SVG (sin la utilización de ningún plugin externo). Esto quiere decir que podremos añadir código SVG en el documento XHTML y el navegador lo interpretará al igual que hace con el código HTML.
A día de hoy, aunque existen similitudes entre Flash y SVG, Flash es mucho más potente que SVG. Flash es ampliamente utilizado, mientras que SVG es utilizado por una minoría, aunque parece que apunta alto. Una de las principales ventajas de SVG es que es un formato libre (mientras que Flash es un formato propietario de Macromedia) y que puede ser editado con un simple editor de textos, aunque también existen herramientas para generar gráficos SVG.