Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

GeoRezo est partenaire de l'évènement DécryptaGéo 2017, le rendez-vous indépendant des professionnels de l'information géographique.

Rendez-vous les 24 et 25 janvier 2017 à l'ENSG, cité Descartes, Noisy-Champs.

Retrouvez le programme de l'évènement et le formulaire d'inscription sur le site de DécryptaGéo

#1 jeu. 17 novembre 2016 12:26

Hippo
Membre
Date d'inscription: 18 janv. 2015
Messages: 2

[MapFish print] Echelle fausse sur mon impression pdf

Bonjour,

J'ai une appli qui tourne avec Geoserver et Leaflet.
Dans mon appli, j'affiche en arrière plan des tuiles d'OSM ou des tuiles venant de l'IGN, sur lesquelles je peux superposer mes données métier en WFS.

Pour imprimer mes cartes, j'ai installé le module MapFish Print à Geoserver, et je peux désormais imprimer mes cartes sans problème, et les fonds de carte et mes couches WFS se superposent parfaitement.
J'utilise également le plugin Leaflet.Print de Leaflet me permettant d'envoyer le create.json plus facilement.

Pour autant, l'échelle sur mon impression pdf est fausse.
Si je mesure la longueur d'une rue sur mon appli, ou dans google maps par exemple, la longueur retournée ne correspond pas à ce que me donne l'échelle sur mon impression pdf.

Savez vous d'où peut venir le problème ?

Par défault la projection Leaflet est en EPSG 3857, et j'ai configuré mon spec.json avec le srs 3857 également.
Les échelles que j'ai spécifié correspondent aux résolutions de mes tuiles.
J'ai testé en changeant les valeurs des céhelles, les dpi également, mais j'ai toujours ce même problème.

Voici un extrait de mon fichier config.yaml dans Geoserver :

Code:

dpis: [75, 96, 150, 300]

scales:
    - 1223
    - 2446
    - 4892
    - 9784
    - 19568
    - 39136

Et voilà ce que j'envoie dans mon create.json :

Code:

{"units":"m","srs":"EPSG:3857","layout":"A4 Landscape","dpi":96,"outputFormat":"pdf","outputFilename":"leaflet-map","layers":[{"baseURL":"http://a.tile.osm.org/","opacity":1,"type":"OSM","extension":"png","tileSize":[256,256],"maxExtent":[-20037508.34,-20037508.34,20037508.34,20037508.34],"resolutions":[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,0.29858214169740677,0.14929107084870338,0.07464553542435169,0.037322767712175846],"singleTile":false}],"pages":[{"center":[175236.00917692634,6280596.13623742],"scale":1223,"mapTitle":"","comment":"","mapCopyright":"copyrightText","rotation":0}]}

Hors ligne

 

#2 jeu. 17 novembre 2016 17:14

Hippo
Membre
Date d'inscription: 18 janv. 2015
Messages: 2

Re: [MapFish print] Echelle fausse sur mon impression pdf

J'ai résolu le problème en renseignant le paramètre "geodetic" à "true"

pages: [{
        center: center,
        scale: scale,
        dpi: 190,
        geodetic: true,
        rotation: 0
}]

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |