banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Les inscriptions sont ouvertes ! L'association GeoRezo sera présente

#1 Thu 25 June 2026 14:20

jpjp74
Participant assidu
Date d'inscription: 21 Oct 2011
Messages: 172

QGIS: placement force des etiquettes pour un affichage horizontal

Bonjour

J'ai une ligne simple qui représente un tracé de randonnée (une seule entité) positionnée en travers (pour l'exemple). Pour des besoins d'affichage (double sens de tracé) j'applique une mise en forme de couleurs différentes et décalées afin qu'elles soient toutes les deux biens visibles.

J'ai rajouté des étiquettes sur la base de règles (temps différents dans chaque sens) avec un positionnement horizontal afin de faciliter la lecture.
Pour un positionnement parallèle à la ligne, il existe une option de décalage au dessus de la ligne.
Mais je ne trouve rien pour un décalage de l'étiquette à droite ou à gauche de la ligne.

Je joins deux images illustratives

Merci d'avance de votre aide, bonne journée

Dernière modification par jpjp74 (Thu 25 June 2026 14:21)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Win 11 et QGIS 3.44.9

Hors ligne

 

#2 Sun 28 June 2026 05:45

vxTedxv
Participant actif
Date d'inscription: 26 Jan 2011
Messages: 69

Re: QGIS: placement force des etiquettes pour un affichage horizontal

La solution risque d'être insatisfaisante de prime abord d'un point de vue visuel car vos étiquettes se superposeront sûrement à vos lignes mais voici "logiquement" comment il faudrait procéder : dans le panneau de paramétrage de votre capture d'écran, dans la partie "ancrage de l'étiquette", des paramètres additionnels apparaitront en cliquant sur le bouton. Dans "ancre de texte", choisissez "début du texte" ou "fin du texte" selon vos règles de sens de trajet. Hélas, ce seul paramétrage ne permet pas de contrôler la distance entre l'étiquette et la ligne.

Pour remédier à cette déconvenue, dans le 2e onglet des paramètres d'étiquetage, on peut contrôler la longueur d'une tabulation. Nous allons donc dynamiquement ajouter une tabulation qui fera office de distance entre le texte et la ligne. Dans la 1ère règle, où le texte sera placé à droite de la ligne, la tabulation sera ajoutée avant le texte, dans la 2e règle, où le texte sera placé à gauche de la ligne, la tabulation sera ajoutée après. Pour ajouter la tabulation dynamiquement, c'est-à-dire sans altérer les données à partir desquelles les étiquettes sont construites, utilisons une expression (le bouton ε à côté du nom du champ utilisé pour étiqueter) :
pour la règle 1 :

Code:

concat('\t',"nom_du_champ")

et pour la règle 2 :

Code:

concat("nom_du_champ",'\t')

Il vous suffira enfin de changer le chiffre dans le paramètre 'tab distance' pour espacer à votre convenance.

Note : pour que cette astuce fonctionne systématiquement, il faudrait idéalement que les trajets allers soient toujours placés du même côté par rapport aux trajets retours.

Dernière modification par vxTedxv (Sun 28 June 2026 05:48)

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo