2012-04-03 17 views
5

Tengo un lienzo que tiene 1400px de ancho y alrededor de 12000px de largo. Tengo un diagrama de jerarquía que necesito dibujar. Cuando se expande por completo, ocupa todo el lienzo (el tamaño que he establecido).HTML5 Canvas: cómo saber el límite para el tamaño?

Ahora esto funciona bien cuando accedo a la página desde la computadora portátil (en varios navegadores).

Pero cuando accedo desde Safari en iPad, el lienzo no aparece o el contenido en el lienzo no está visible. Creo que esto se debe al gran tamaño del lienzo.

Parece que hay disponibilidad de memoria o dependencia del dispositivo, lo que limita el tamaño (con el tamaño permitido según el W3C).

¿Cómo saber o calcular el tamaño? ¿O hay algunas soluciones? ¿Hay alguna otra forma? Soy un principiante.

+2

Supongo que estás haciendo algo mal. ¿Por qué necesitas un área de pintura tan grande? –

+0

Tengo un diagrama de jerarquía que necesito dibujar. Cuando se expande por completo, ocupa todo el lienzo (el tamaño que he establecido). ¿Hay alguna otra forma? Soy un principiante. – Kangkan

Respuesta

5

Formas alternativas (anwsering the comment):

  1. uso múltiples lienzos (uno para cada nivel de profundidad)
  2. usar una imagen mostrada en la marcha por el backend (php Ruby pitón java??? ?)
  3. uso de varias Div estilo con CSS (solución fresca & ligera)
  4. render varias imágenes pequeñas y la posición con CSS (mezcla de # 2 y # 3)

Estas son solo propuestas, no probadas en datos reales.