2008-11-20 20 views
5

Quiero permitir que el usuario dibuje una imagen en un navegador. En otras palabras, necesito tanto gráficos de mapa de bits como capacidades de dibujo, ya sean vectoriales o de mapa de bits.Dibujo en la parte superior de una imagen en Javascript

lienzo se ve bien, pero no es compatible con IE, y aunque no es ExCanvas, me pregunto si ExCanvas es lo suficientemente estable como para su uso consistente en IE6 a 8.

O lo mejor de todo, es que hay un abierto ¿imagen de fuente/biblioteca de dibujo que admite todo esto fuera de la caja? Encontré dos docenas de editores de imágenes basados ​​en la web o herramientas de dibujo, pero ninguno admite los requisitos. (Y me gustaría evitar Flash/Flex/Silverlight/JavaFX.)

Respuesta

3

Aunque dijiste que te gustaría evitarlo, te sugiero Flash. Puede usar fácilmente Flash 6 o 7 y estos tienen una tasa de adopción> 90%. Me sorprendería si pudieras obtener ese nivel de soporte con JavaScript. Flash es realmente escribir una vez que se ejecuta en cualquier lugar, lo que reducirá su tiempo de desarrollo.

6

Tome un vistazo a RaphaelJS ... es una aplicación de navegador cruz del dibujo funciones, usando Canvas, VML o SVG donde estén disponibles. No estoy seguro de si permite que los usuarios dibujen por sí mismos de la caja, pero podría valer la pena echarle un vistazo.

1

Esta es una biblioteca muy inteligente y muy expansiva que me encontré hace un tiempo: JS-Graphics

0

me gustaría añadir un poco a la respuesta de Kieron; El sitio de Water Zorn tiene un paquete de gráficos vectoriales muy bien presentado. Lo he usado en una aplicación grande y se integró maravillosamente con .NET y javascript escrito a mano. También usé su API de arrastrar y soltar para suavizar el arrastre de elementos html.

2

Use dojox.gfx. Es un navegador cruzado (SVG/VML/Canvas/Silverlight) y parece que se ajusta a la ley. Puede descargarlo desde the main Dojo site. Puedes probar su tests y demos. Advertencia: los dos últimos enlaces serán lentos porque el código fue diseñado para problemas de depuración, no para velocidad (no minimizado, no combinado, no comprimido, servido desde el servidor de archivos).

Cuestiones relacionadas