2011-08-27 25 views
5

Así que construí esta aplicación de dibujo en tiempo real con el lienzo node.js, socket.io y html5. Cada píxel que mueve el mouse mientras se hace clic se rastrea y se transmite (para mostrar la entrada de dibujo en otras computadoras).¿Cómo guardar el estado del lienzo en db?

Sé que es posible guardar una imagen del lienzo, pero este lienzo es muy grande (10000x10000 + píxeles). En este momento, cuando la página se actualiza todos los dibujos se han ido (ya que solo se envió a través de un socket, nada guardado).

Me gustaría guardar todos los datos del lienzo en un db y luego volver a escribir de alguna manera cuando la página se carga de nuevo, pero es demasiado. ¿Cómo harías para hacer esto?

Respuesta

1

Puede rastrear los clics y movimientos del mouse que hicieron que el lienzo se vea de esa manera mientras los está enviando a través del zócalo, y simularlos para reconstruir la imagen.

+0

Esa sería una entrada de base de datos para cada píxel de un trazo de mouse una vez por milisegundo. No estoy seguro de si eso es posible. Necesito un método más eficiente. – sdfadfaasd

+1

@Alley no tiene que enviar cada una de ellas cada milisegundos. Puedes escribirlos en el db cada unos segundos más o menos, y tal vez, si no te importa alguna pérdida de calidad, solo conserva un píxel cada pocos, y supongamos que tienen líneas que los conectan (piensa conectar los puntos). –

+0

Hmmm, ¿crees que incluso funcionaría en una grilla extremadamente grande? – sdfadfaasd

Cuestiones relacionadas