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é ?

#1 Mon 28 August 2023 16:28

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1668

QGIS: Retour a la ligne

Bonjour,
J'ai un texte à afficher en étiquettes sur plusieurs lignes,
Par exemple, je voudrais que :
Fondation superficielle devienne
Fondation
surperficielle

Comment faire?
Merci.

Hors ligne

 

#2 Mon 28 August 2023 16:39

Vincent Vauchey
Participant assidu
Lieu: saint jean de braye
Date d'inscription: 24 Jan 2006
Messages: 288

Re: QGIS: Retour a la ligne

Bonjour

Le plus simple et de mettre le texte de votre étiquette dans un éditeur de texte "Notepad++" et de faire un copier coller dans votre champs Qgis, et voila votre étiquette avec retour à la ligne.

Vous pouvez aussi juste copier le caractère invisible du retour à la ligne et le copier dans votre étiquette existante.

Ou dans les propriétés de la couche, onglet "Formulaire d'attributs" mettre le champs en question en "édition de texte" et cocher "Multi-ligne" il est alors possible de faire entré pour le retour à la ligne.

Dernière modification par Vincent Vauchey (Mon 28 August 2023 16:48)

Hors ligne

 

#3 Mon 28 August 2023 16:48

Sylvain larvor (Dsi)
Participant occasionnel
Date d'inscription: 10 Jul 2018
Messages: 13

Re: QGIS: Retour a la ligne

Bonjour Conejo,

Tu peux essayer de jouer avec  wordwrap dans le calculateur des expression des etiquettes :

Fonction wordwrap
Renvoie une chaîne de caractères découpée par des retours à la ligne, selon un nombre minimum ou maximum de caractères.
Syntaxe
wordwrap(string,wrap_length[,delimiter_string])

[ ] indique des éléments optionnels
Arguments

string
la chaîne à découper
wrap_length
un entier. Si wrap_length est positif, le nombre représente le nombre maximum idéal de caractères pour insérer un retour à la ligne ; si négatif, le nombre représente le nombre minimum de caractères pour insérer un retour à la ligne.
delimiter_string
Chaîne de caractères optionnelle de substitution pour générer un retour à la ligne.

Exemples
wordwrap('UNIVERSITE DE QGIS',13) → 'UNIVERSITE DE
QGIS'
wordwrap('UNIVERSITE DE QGIS',-3) → 'UNIVERSITE
DE QGIS'


Je me demande si dans formatage la partie "découper sur le caractère" ne fait pas la même chose.

Hors ligne

 

#4 Mon 28 August 2023 17:52

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3928

Re: QGIS: Retour a la ligne

Bonjour,

Sylvain larvor (Dsi) a écrit:

Tu peux essayer de jouer avec  wordwrap dans le calculateur des expression des etiquettes :


Ça n'engage que moi, mais je préfère de loin cette option. Nul ne devrait modifier ses données juste pour faire du rendu.

Hors ligne

 

#5 Mon 28 August 2023 19:45

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1668

Re: QGIS: Retour a la ligne

ok pour moi aussi c'est la méthode wordwrap que j'ai choisie.

Hors ligne

 

#6 Mon 28 August 2023 20:34

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 426

Re: QGIS: Retour a la ligne

Sylvain larvor (Dsi) a écrit:

Je me demande si dans formatage la partie "découper sur le caractère" ne fait pas la même chose.


Dans formatage il faut jouer avec la longueur max de la ligne.
voir doc https://docs.qgis.org/3.28/fr/docs/user … atting-tab

Hors ligne

 

#7 Fri 22 September 2023 12:47

GlaDal
Participant assidu
Date d'inscription: 30 Aug 2013
Messages: 1059

Re: QGIS: Retour a la ligne

J'ai été récemment confronté à cette question, soit : préférer la fonction wordwrap() via une expression ou 'découper sur un caractère' mais dans un contexte un peu différent, à savoir la mise en page où l'option de longueur max de la ligne n'est pas proposée pour un objet de type 'table attributaire'.
Mes contraintes initiales étaient de :
1 - Pouvoir faire un retour à la ligne pour pouvoir lister des observations afin de faciliter la lecture tout en structurant l'argumentation
2 - Ne pas dépasser une certaine largeur (contrainte par la mise en page et la taille de la feuille A4 en sortie)

L'option 'découper sur un caractère' répond au besoin 1.
La fonction 'Wordwrap()' répond au besoin 2.
Seulement, il est impossible de cumuler les deux, à savoir limiter la largeur de ma zone de texte et de faire un retour à la ligne quand je le souhaite.
En paramétrant une expression avec wordwrap, cela annule l'option de 'découper sur un caractère' pourtant paramétrer dans les options de traitement de la police de mon objet 'table attributaire'.
A savoir que la solution de basculer sur du html n'est pas possible pour les novices. J'ai pensé faire un couche secondaire pour les observations qui serait lié à ma couche principale ce qui me permettrait de répondre aux deux besoins mais c'est une solution un peu contraignante à mettre en place et, à mon sens, pas satisfaisante. Je reprends SANTANNA

Nul ne devrait modifier ses données juste pour faire du rendu.


:-)

Je viens de découvrir qu'on peut utiliser avec la fonction Wordwrap, une chaîne de caractères optionnelle de substitution pour générer un retour à la ligne mais qui ne répond pas non plus au besoin.

Au plaisir,

Dernière modification par GlaDal (Fri 22 September 2023 13:08)

Hors ligne

 

Pied de page des forums

Powered by FluxBB