7 votos

¿Cómo generar una miniatura de un mapa de openlayers?

Me gustaría permitir al usuario generar una imagen en miniatura de lo que está viendo en el lienzo del mapa de OpenLayers para que el usuario pueda imprimir, guardar, compartir, enviar por correo electrónico, o lo que sea.

¿Alguna idea de cómo podría hacer esto?

Busco soluciones que generen una imagen. No quiero guardar el innerHTML, los datos de las características ni nada que no sea una imagen. Una imagen es mucho más fácil de compartir y no puede ser modificada posteriormente.

Ejemplos:

enter image description here

o esto también funcionará:

enter image description here

3voto

djq Puntos 7670

He estado mirando algunas de las nuevas funcionalidades en la versión de desarrollo de la biblioteca OpenLayers, y hay un demo de esta característica exacta. En este ejemplo, permite generar una imagen utilizando el mapa base, un wms y una superposición vectorial. El ejemplo parece funcionar bien en Firefox (pero de vez en cuando me sale una cadena de errores mientras se carga la página), Safari parece estar bien al igual que Chrome. Estoy teniendo dificultades para conseguir que funcione en mi propio servidor para mi propia aplicación, ya que requiere un montón de reelaboración de código. Muchas piezas no son compatibles con la biblioteca actual de openlayers.

enter image description here

2voto

djq Puntos 7670

¿Podría utilizar el GeoExt ¿biblioteca javascript? Tienen una demostración de la impresión a un pdf ici :

enter image description here

Requiere el módulo de impresión Mapfish o Geoserver.

1voto

Celso Puntos 66

Si estás dispuesto a aceptar una solución sólo para Google-Chrome, he creado un plugin para Chrome que toma una captura de pantalla de la pestaña actual, recorta el div de ol y lo representa en un lienzo.

A partir de ahí, hacer miniaturas, imprimir, compartir, lo que sea, es sólo cuestión de condimentar al gusto el HTML.

Está en github:

https://github.com/unicolet/chrome_print_ext

p.d.: parte del texto está en italiano, pero lo traduciré si es necesario.

p.s.2: puede ser que requiera algunas pequeñas modificaciones para que funcione en tu aplicación, pero estaré encantado de ayudarte.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X