L’impression

Emprise définie par l’utilisateur à la volée dans Lizmap

Pour proposer l’impression sur la carte en ligne, il faut avoir activer l’outil d’impression dans l’onglet Carte du plugin (Options de carte) et que le projet QGIS possède au moins un composeur d’impression sans « atlas » activé.

Créer une mise en page

Dans votre mise en page, vous pouvez ajouter :

  • Une carte, sans atlas

  • Une image pour la flèche du nord

  • Une image pour le logo de votre structure

  • Une légende qui sera fixe pour toutes les impressions

  • Les étiquettes

  • Une échelle
    • Soit Numérique

    • Ou Largeur ajustée au segment avec un point de référence correct pour la position de la barre d’échelle

  • une carte de localisation soit une carte pour laquelle vous aurez activé et configuré la fonction d”Aperçu. Lisez Créer une carte de localisation

  • Depuis QGIS 3, vous pouvez utiliser des expressions QGIS, dans vos labels par exemple. Vous pouvez créer un label automatique selon les couches visibles en suivant l’exemple : https://docs.qgis.org/latest/fr/docs/user_manual/print_composer/composer_items/composer_label.html#id4

Contenu dynamique

Vous pouvez permettre à l’utilisateur de modifier le contenu de certaines étiquettes (titre, description, commentaire, etc.). Pour ce faire, vous devez ajouter un identifiant à votre étiquette dans le composeur.

Avertissement

Chaque identifiant doit être unique pour l’ensemble du composeur. Les identifiants doivent être des chaînes de caractères et non des nombres entiers (par exemple, “mon_titre” et non “1”).

../../_images/interface-print-dynamic-label.jpg

Lizmap demandera automatiquement à l’utilisateur dans le navigateur Web de remplir chaque champ.

Astuces :

  • Si votre étiquette est pré-remplie dans QGIS, le champ sera également pré-rempli dans le navigateur Web.

  • Si vous cochez la case « Rendu en HTML » pour votre étiquette dans QGIS, vous aurez une étiquette multiligne dans Lizmap acceptant le code HTML. Utilisez <br> pour les sauts de ligne par exemple.

L’aperçu dans Lizmap sera similaire à cette capture d’écran. Le rectangle rouge est la zone que l’utilisateur peut définir dans le navigateur web et l’utilisateur peut également définir la description et le titre de la carte.

../../_images/print_user_params.jpg

Échelles

The print function will be based on the map scales that you set in the plugin Map (Options de carte).

Exclure une mise en page

Il est possible d’exclure des compositions d’impression pour le web. Par exemple, si le projet QGIS contient 4 compositions, l’administrateur du projet peut exclure 2 compositions dans le Propriétés du projet ‣ QGIS Server. Seules les compositions publiées seront présentées dans Lizmap.

../../_images/exclude_layout.jpg

Mise en page d’un atlas avec une popup

En utilisant l’extension AtlasPrint https://github.com/3liz/qgis-atlasprint sur QGIS Serveur, il est possible d’ajouter automatiquement un lien vers le PDF.

  • Installer l’extension AtlasPrint sur le serveur

  • Ajouter une mise en page avec un atlas sur la couche

  • Activer les Popup sur cette même couche

Un lien sera affiché automatiquement en bas de la popup. Ce n’est pas possible de laisser l’utilisateur remplir des entrées. Ces PDFs sont liés à l’entité de l’atlas.

../../_images/feature-popup-atlas.jpg

Permettre l’impression de fond externe

L’onglet Fonds de l’extension Lizmap permet de sélectionner et d’ajouter des fonds externes (Fonds de carte). Ces fonds externes ne faisant pas partie du projet QGIS, la fonction d’impression ne les intègrera pas par défaut.

Pour pallier ce manque Lizmap propose un moyen simple d’imprimer un groupe ou une couche à la place du fond externe. Pour permettre l’impression d’une couche qui est visible dans Lizmap Web Client seulement :

  • Vous devez ajouter la couche équivalente dans le projet QGIS.

  • Vous devez le masquer dans la légende de Lizmap, voir Masquer certaines couches.

  • Renommer la couche dans l’un de ces noms:

    • osm-mapnik pour OpenStreetMap

    • osm-stamen-toner pour OSM Stamen Toner

    • osm-cyclemap pour OSM CycleMap

    • google-satellite pour Google Satellite

    • google-hybrid pour Google Hybrid

    • google-terrain pour Google Terrain

    • google-street pour Google Streets

    • bing-road pour Bing Road

    • bing-aerial pour Bing Aerial

    • bing-hybrid pour Bing Hybrid

    • ign-scan pour IGN Scan

    • ign-plan pour IGN Plan

    • ign-photo pour IGN Photos

    • ign-cadastral pour le cadastre IGN

../../_images/publish-print-basemap.jpg

*Dans la capture d’écran ci-dessus, nous pouvons remarquer la couche osm-mapnik dans le groupe hidden, qui est une couche TMS utilisant https://tiles.openstreetmap.org. *

Note

L’utilisation de cette méthode doit se faire dans le respect des licences des fonds externes utilisés (Fonds de carte).

Avertissement

Si cela ne fonctionne pas, vérifiez que votre serveur est en mesure d’accéder à Internet. Ces couches de fond sont fournies en ligne uniquement. Certains proxy ou pare-feu peuvent bloquer certaines requêtes vers Internet. Si votre serveur est derrière un proxy, vérifiez que QGIS Server est configuré avec les paramètres du proxy (en utilisant le fichier QGIS3.ini et la section [proxy]). Reportez-vous à la documentation de QGIS Server pour connaître ces paramètres.

Pour ajouter ces couches, vous pouvez utiliser les services WMS/WMTS existants, les fournisseurs XYZ (avec QuickMapServices), les fichiers locaux…

Pour les couches de fond OpenStreetMap, il est possible d’utiliser un fichier XML pour que GDAL exploite les services de tuiles OpenStreetMap. Son utilisation est décrite dans la documentation de GDAL https://gdal.org/frmt_wms.html ou dans cet article http://www.3liz.com/blog/rldhont/index.php?post/2012/07/17/OpenStreetMap-Tiles-in-QGIS (attention, le code EPSG doit être 3857).

Pour les couches de fond IGN, vous pouvez utiliser l’url WMS ou WMTS de l’IGN. La clé utilisée pour cette url doit être protégée par referer et IP. Dans referer, vous devez indiquer l’URL de votre page de projet comme ceci : .*votre-url.fr.*. Dans IP, vous devez indiquer l’IP de votre serveur Lizmap et l’IP de votre ordinateur (pour ouvrir l’url WMS de l’IGN dans QGIS sur votre ordinateur). Les deux adresses IP doivent être séparées par une virgule. Attention, si vous utilisez des couches WMS ou WMTS de l’IGN, le code EPSG du projet QGIS doit être 3857.

Ajouter vos propres images dans une mise en page

Si vous ajoutez des images dans une mise en page, comme une flèche Nord ou le logo de votre organisation, le serveur doit avoir accès a ces images également.

  • Soit vous utilisez une image avec une URL http://. L’image est accessible tant en local que sur le serveur.

  • Ou alors vous utilisez une expression QGIS pour construire un chemin compatible bureautique et serveur:

    1. Transférez vos images dans le dossier media (lire Média), ceci n’est pas obligatoire, vous pouvez transférer à côté du projet.

    2. Utiliser une expression QGIS @project_home || '/media/organization_logo.png'.

    3. Utilisez une barre oblique slash même si vous êtes sur Windows.