Librerías para manipular SVG
![]()
Recientemente he iniciado otro pequeño proyecto de laboratorio y que seguramente crecerá con el tiempo. Se trata de una aplicación web para el diseño de interfaces (mockups, storyboards, bosquejos o pantallas preliminares), muy útil para cuando se diseñan aplicaciones. Para esto estuve investigando que sería mejor utilizar si SVG o Canvas (Flash o VML no estaban en mis planes ya que funcionan con plugins de terceros en el caso de Flash y VML porque solo funciona con IE).
Canvas
- Utiliza una única etiqueta HTML
- Se manipula através de pixeles
- Se comporta como una imagen
- Soporta el manejo de eventos (es complejo)
SVG
- Esta conformado por meta etiquetas
- Se manipula através de formas vectoriales
- Se que hay algunas limitaciones al mezclarlo con HTML ya que tiene su propio espacio de nombres
- Soporta javascript y el manejo de eventos es fácil de utilizar
La elección fue obvia.. lo que trato de hacer requiere mucha manipulación de DOM y el redimensionado de los elementos sin que estos pierdan su apariencia.. Los vectores vendrían a solucionarme el problema y el resultado de la imagen final podria almacenarla en archivos de texto ya que el SVG se deriva del XML. Aparte de que SVG es cross-browser y multiplataforma (IE no se incluye) y hay documentos estandarizados para el uso de este lenguaje.
Buscando algunas librerías para empezar mi aplicación encontré muy buenos recursos, cada una de estas librerías tienen implementaciones diferentes y al parecer estan desarrolladas para diferentes propósitos ya que las funcionalidades encontradas en los demos varian de una librería a otra.
Al final después de haber evaluado las 3 librerías que encontré.. decidí utilizar Raphael Javascript, más centrado en el uso de vectores, manipulación de los elementos y una documentación que aunque no se ve completa, no parece ser algo en lo que pueda detener el desarrollo.
Las primeras impresiones de esta aplicación las mostré en el SHDHMC 10.. y aunque no había mucho que ver ya que en unas cuantas horas desarrollé unos ejemplos muy básicos, recibí de parte de algunos asistentes felicitaciones y algunos otros mostraron interés en colaborar con el desarrollo.
Si alguien más le interesa el proyecto, bienvenidos sean..
There are currently no comments highlighted.