| Centrage d'un texte sur une feuille | |
|
|
Auteur | Message |
---|
Cobra
Nombre de messages : 14 Localisation : France Date d'inscription : 05/11/2009
| Sujet: Centrage d'un texte sur une feuille Dim 29 Nov 2009 - 12:27 | |
| Bonjour à Tous
Je souhaiterais savoir si quelqu'un a une astuce pour centrer un String$, venant de la lecture d'un fichier texte, dans une feuille. Ce String$ peut contenir un nombre variable de caractères avec une police donnée.
Y-a-t-il une possibilité de centrer un texte dans un alpha ?
Merci | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Rép Dim 29 Nov 2009 - 12:51 | |
| Pour centrer une phrase dans un memo, c'est assez folklo, car cela dépend beaucoup de la police employée, à la rigueur, on peut employer une police dont la taille des lettres est constante. De toute façon, le truc c'est de placer des espaces devant à raison de la moitié de ce qui reste d'espaces vides après la phrase. Pour un string dans un alpha, on peut faire pareil, mais il y a une méthode plus simple, il suffit alors de déplacer le left de l'alpha, comme par exemple : - Code:
-
dim a$ : a$="Abracadabra et abracadabri" full_space 0 alpha 1 left 1,int((screen_x-len(a$)*6)/2) caption 1,a$ ou bien : - Code:
-
dim a$ : a$="Abracadabra et abracadabri" alpha 1 left 1,int((width(0)-len(a$)*6)/2) caption 1,a$ PS: le *6, c'est dû à ce que le screen ou width mesure des pixels alors que le len mesure des tailles de lettres. | |
|
| |
Cobra
Nombre de messages : 14 Localisation : France Date d'inscription : 05/11/2009
| Sujet: Re: Centrage d'un texte sur une feuille Dim 29 Nov 2009 - 13:12 | |
| Merci jjn4,
J'avais déjà essayé cette méthode, mais avec certaines tailles et polices de caractère, le résultat n'est plus correct | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: -- Dim 29 Nov 2009 - 13:28 | |
| C'est vrai que ça dépend dans tous les cas de la taille des lettres. Il faudrait pouvoir calculer la taille des string en pixels. Mais là, je ne connais pas de formule. | |
|
| |
Cobra
Nombre de messages : 14 Localisation : France Date d'inscription : 05/11/2009
| Sujet: Re: Centrage d'un texte sur une feuille Dim 29 Nov 2009 - 13:34 | |
| L'idéal serait de demander à Jack de créer une propriété Alignement pour l'objet Alpha qui prendrait les valeurs Aligné à droite, Aligné à gauche et Centré.
Peut-être que c'est déjà dans ces cartons ? | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Centrage d'un texte sur une feuille Dim 29 Nov 2009 - 13:47 | |
| Il faudrait une fonction qui renvoie la longueur d'un string en pixels, mais ça dépend de la police et de la taille des caractères actuels. Et ça ne me paraît pas évident du tout avec des polices proportionnelles. | |
|
| |
Jack Admin
Nombre de messages : 2394 Date d'inscription : 28/05/2007
| Sujet: Re: Centrage d'un texte sur une feuille Lun 30 Nov 2009 - 19:30 | |
| J'ai mis cela dans mes priorités, qui devrait répondre à ta demande:
TEXT_HEIGHT(N,A$) : retourne la hauteur en pixels qu'aurait A$ s'il était imprimé sur l'objet de numéro N, compte tenu de la police du style et de la taille, utilisée pour N TEXT_WIDTH(N,A$) : retourne la largeur en pixels qu'aurait A$ s'il était imprimé sur l'objet de numéro N, compte tenu de la police du style et de la taille, utilisée pour N | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Centrage d'un texte sur une feuille Lun 30 Nov 2009 - 21:39 | |
| Ca résoudra effectivement le problème du centrage horizontal ou vertical d'un texte dans un objet. | |
|
| |
Cobra
Nombre de messages : 14 Localisation : France Date d'inscription : 05/11/2009
| Sujet: Re: Centrage d'un texte sur une feuille Mer 2 Déc 2009 - 19:12 | |
| Merci à toi, Jack, pour ces 2 nouvelles commandes | |
|
| |
Contenu sponsorisé
| Sujet: Re: Centrage d'un texte sur une feuille | |
| |
|
| |
| Centrage d'un texte sur une feuille | |
|