Suite

Comment imprimer uniquement une sélection de la carte à l'aide du module d'impression MapFish ?

Comment imprimer uniquement une sélection de la carte à l'aide du module d'impression MapFish ?


Je travaille sur une API SIG qui utilise OpenLayers 2. Je souhaite faire des instantanés d'une région sélectionnée. Par example. Je dessine un rectangle et le module d'impression MapFish n'imprime que la région sélectionnée.

J'ai essayé d'utiliser lebboxpropriété, mais j'obtiens la mauvaise image, c'est-à-dire qu'au lieu d'un rectangle près de Lisbonne, j'obtiens un rectangle avec l'Europe du Sud et l'Afrique du Nord/Centre.

Voici mes options d'impression :

var printOptions = { units : 'm', srs : 'EPSG:900913', layout : options.layout, dpi : '300', mapTitle : options.mapTitle, commentaire : options.comment, couches : [ { baseURL : 'http ://a.tile.openstreetmap.org/', opacité : 1, singleTile : false, type : 'OSM', maxExtent : [-20037508.3392, -20037508.3392, 20037508.3392, 20037508.3392], tileSize : [256, 256], extension : '.png', résolutions: [156543.03390625, 78271,516953125, 39135,7584765625, 19567,87923828125, 9783,939619140625, 4891,9698095703125, 2445,9849047851562, 1222,9924523925781, 611,4962261962891, 305,74811309814453, 152,87405654907226, 76,43702827453613, 38,218514137268066, 19,109257068634033, 9,554628534317017, 4,777314267158508, 2,388657133579254, 1,194328566789627, 0.5971642833948135]}], pages : [ { bbox : [-1050091.8944356, -990623.88643799, 4675576.582525099, 4733515.8499572] } ] } ;

Je suppose que le tableau bbox est défini comme ceci : [minX, maxX, minY, maxY].

Est-ce correct?


J'ai réussi à le faire fonctionner en utilisant la réponse de Thomas B.

Je dessine une boîte, j'en récupère les limites, puis j'obtiens la valeur BBOX dans un tableau, comme ceci :

var printBbox = geometry.getBounds().toArray();

Et le, dans les définitions du module d'impression, je fais ceci:

pages : [ { bbox : printBbox } ]

"Normalement" la bbox devrait être :

gauche, bas, droite, haut

ouest, sud, est, nord

minX, minY, maxX, maxY

donc j'essaierais :

bbox : [-1050091.8944356, 4675576.582525099, -990623.88643799, 4733515.8499572]

PS: il y a une belle BBOX-Cheatsheet: https://github.com/perrygeo/bbox-cheatsheet/blob/master/reference.md Même si OpenLayers/Geoserver y manque, je pense que cela peut parfois être utile.


Voir la vidéo: Imprimer un document Word