Exposant à gauche

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Exposant à gauche

Messagepar guiguiche » Dimanche 26 Novembre 2006, 17:53

Je cherche à écrire des exposants à gauche des caractères (typiquement la transposée d'une matrice). J'ai trouvé ça mais je ne suis pas satisfait pas ce que j'obtiens : si c'est "tX" le "t" est trop éloigné (à mon goût et surtout trop près de la lettre précédente, par ex: XtX), si c'est "tY" alors le "t" est trop près du Y.
Y a-t-il une astuce pour que le réglage dépendante de l'allure de la lettre qui suit (réglage que je suppose exister pour l'exposant traditionnel à droite).
guiguiche
Modérateur
 
Messages: 8019
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Publicité

Messagepar François D. » Dimanche 26 Novembre 2006, 18:03

Euh, et
Code: Tout sélectionner
{}^tM
test : ${}^tM$ ... D'ailleurs, on peut forcer un petit rapprochement à l'aide de la commande \! :
Code: Tout sélectionner
{}^t \! M
donne ${}^t \! M$ ...
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant

Messagepar guiguiche » Dimanche 26 Novembre 2006, 18:14

Ouais, c'est ce que je faisais avant avec 0 ou 1 ou 2 \! (selon le caractère qui suit)mais le problème c'est que je voudrais bien éviter de vérifier à chaque fois s'il faut 0, 1 ou 2 \!
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
guiguiche
Modérateur
 
Messages: 8019
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Messagepar François D. » Dimanche 26 Novembre 2006, 18:35

Ah ... dans ce cas, créer une commande qui l'insère automatiqueùent ?
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant

Messagepar MB » Dimanche 26 Novembre 2006, 18:40

Oui, j'ai jamais rien trouvé de formidable non plus.
Je suis intéressé. :wink:
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6782
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Messagepar François D. » Dimanche 26 Novembre 2006, 18:47

Je viens de relire le premier message ... effectivement, le problème me semble pénible à résoudre, car il faut intervenir à bas niveau dans le gestion des fontes :? ...

Cela dit, solution de sauvetage : créer une commande brutale qui teste le caractère derrière lequel doit se situer l'exposant à gauche, et insère ou non le \! ; cela suppose une sorte de dictionnaire et une série de tests, mais ça peut éventuellement se compléter au fur et à mesure des besoins, sans vouloir recenser tous les cas de figure immédiatement.
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant

Messagepar guiguiche » Dimanche 26 Novembre 2006, 20:44

François D. a écrit:Je viens de relire le premier message ... effectivement, le problème me semble pénible à résoudre, car il faut intervenir à bas niveau dans le gestion des fontes :? ...

Cela dit, solution de sauvetage : créer une commande brutale qui teste le caractère derrière lequel doit se situer l'exposant à gauche, et insère ou non le \! ; cela suppose une sorte de dictionnaire et une série de tests, mais ça peut éventuellement se compléter au fur et à mesure des besoins, sans vouloir recenser tous les cas de figure immédiatement.


C'est totalement hors de mes maigres compétences actuelles sur TeX/LaTeX.
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
guiguiche
Modérateur
 
Messages: 8019
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Messagepar François D. » Dimanche 26 Novembre 2006, 20:54

Mes compétences étant ce qu'elles sont, il ne faut pas imaginer grand'chose de plus dans mon esprit qu'une série fastidieuse de \ifthen imbriqués ...

Cela dit, quand je me heurte à des cas comme celui-là, je me demande s'il ne serait pas intéressant de compléter LaTeX (en allant s'il le faut jusqu'au code source) pour implémenter des possibilités de test plus élaborées, genre « case ... of ».
François D.
Téra-utilisateur
 
Messages: 1370
Inscription: Dimanche 30 Juillet 2006, 09:04
Localisation: Alsace
Statut actuel: Actif et salarié | Enseignant

Re: Exposant à gauche

Messagepar gigiair » Dimanche 26 Novembre 2006, 21:33

guiguiche a écrit:Je cherche à écrire des exposants à gauche des caractères (typiquement la transposée d'une matrice). J'ai trouvé ça mais je ne suis pas satisfait pas ce que j'obtiens : si c'est "tX" le "t" est trop éloigné (à mon goût et surtout trop près de la lettre précédente, par ex: XtX), si c'est "tY" alors le "t" est trop près du Y.
Y a-t-il une astuce pour que le réglage dépendante de l'allure de la lettre qui suit (réglage que je suppose exister pour l'exposant traditionnel à droite).

D'après ce que j'ai lu en googelisant il n'existe pas de commande en général pour effectuer cette opération car ce n'est pas possible. Il faut ajuster «à la main» l'espace à droite de l'exposant en fopnction de la «classe» de l'opérande droit.
http://groups.google.com/group/comp.tex ... urce&hl=fr

Il existe la commande \prescript qui vient avec le package mathtools qui permet d'afficher un exposant à gauche. On peut régler l'espacement avec la commande \mkern en unités \mu.
Exemple:
Code: Tout sélectionner
\begin{displaymath}
 \prescript{t}{}{
     \begin{bmatrix}
       1 & 2 & 3 & 4 \\
       1 & 2 & 3 & 4 \\
       1 & 2 & 3 & 4 \\
       1 & 2 & 3 & 4
     \end{bmatrix}}= \prescript{t\mkern -2mu}{}{M}
   \end{displaymath}

http://www.tug.org/tex-archive/macros/l ... htools.pdf

--
JJR.
gigiair
Exa-utilisateur
 
Messages: 2295
Inscription: Samedi 08 Juillet 2006, 19:56
Localisation: Saint Bonnet Elvert
Statut actuel: Actif et salarié

Re: Exposant à gauche

Messagepar guiguiche » Dimanche 26 Novembre 2006, 21:44

gigiair a écrit:D'après ce que j'ai lu en googelisant il n'existe pas de commande en général pour effectuer cette opération car ce n'est pas possible. Il faut ajuster «à la main» l'espace à droite de l'exposant en fopnction de la «classe» de l'opérande droit.

:crybaby: Oh rage, Oh désespoir !

Merci JJR du renseignement (je n'avais pas épluché toutes les réponses google.
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
guiguiche
Modérateur
 
Messages: 8019
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Re: Exposant à gauche

Messagepar gigiair » Dimanche 26 Novembre 2006, 21:56

guiguiche a écrit: :crybaby: Oh rage, Oh désespoir !

Je ne pense pas que ce soit si dramatique, si on limite le problème à des formules du même type, il suffit d'écrire une (ou plusieurs) commande(s) adaptée(s).

--
JJR.
gigiair
Exa-utilisateur
 
Messages: 2295
Inscription: Samedi 08 Juillet 2006, 19:56
Localisation: Saint Bonnet Elvert
Statut actuel: Actif et salarié

Re: Exposant à gauche

Messagepar la main gauche » Mardi 28 Novembre 2006, 11:58

gigiair a écrit:D'après ce que j'ai lu en googelisant il n'existe pas de commande en général pour effectuer cette opération car ce n'est pas possible. Il faut ajuster «à la main» l'espace à droite de l'exposant en fopnction de la «classe» de l'opérande droit.
http://groups.google.com/group/comp.tex ... urce&hl=fr


Tu charries un peu là! Le type qui écrit ce message dit que ça n'est pas possible de placer des exposants à gauche automatiquement dans toutes les situations possibles et imaginables, pour mettre le petit $t$ de la transposition à gauche d'une matrice, il n'y a pas de problème; il ya une commande sideset`dans la package amsmath qui fait ça.

Sinon, il vaut mieux faire \mathstrut^t M que {}^t M, je crois.
la Main Gauche
la main gauche
Méga-utilisateur
 
Messages: 274
Inscription: Jeudi 30 Mars 2006, 07:44
Localisation: selon l'idéal de la liberté

Re: Exposant à gauche

Messagepar gigiair » Mardi 28 Novembre 2006, 22:16

la main gauche a écrit:Tu charries un peu là! Le type qui écrit ce message dit que ça n'est pas possible de placer des exposants à gauche automatiquement dans toutes les situations possibles et imaginables, pour mettre le petit $t$ de la transposition à gauche d'une matrice, il n'y a pas de problème; il ya une commande sideset`dans la package amsmath qui fait ça.
Sinon, il vaut mieux faire \mathstrut^t M que {}^t M, je crois.

C'est toujours possible de placer l'exposant à gauche, le problème est d'avoir un espacement régulier, indépendant du terme de droite.
Il me semble que c'était la question de l'intitateur de ce fil.
\sideset ne fonctionne qu'à gauche des opérateurs,.
voir http://www.ctan.org/tex-archive/macros/ ... msldoc.pdf
§7.2 page 19.
--
JJR.
gigiair
Exa-utilisateur
 
Messages: 2295
Inscription: Samedi 08 Juillet 2006, 19:56
Localisation: Saint Bonnet Elvert
Statut actuel: Actif et salarié

Re: Exposant à gauche

Messagepar guiguiche » Mardi 28 Novembre 2006, 22:18

gigiair a écrit:C'est toujours possible de placer l'exposant à gauche, le problème est d'avoir un espacement régulier, indépendant du terme de droite.
Il me semble que c'était la question de l'intitateur de ce fil.

Oui
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
guiguiche
Modérateur
 
Messages: 8019
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Messagepar la main gauche » Mercredi 29 Novembre 2006, 13:26

Un espacement régulier ? un espacement constant ? Entre quoi et quoi ? Un espacement constant entre l'exposant à gauche et le terme principal peut être facilement obtenu de la façon suivante; qui a l'inconvénient de produire un atome de type MATHORD (dont les espacements sont gérés comme pour une variable).

Je n'ai pas mes références LaTeX sous les yeux, mais voici la recette:

On définit une commande

Code: Tout sélectionner
\tr[#1]#2


pour transposée, le #1 est un argument optionnel dont la valeur implicite est t. Cette commande procède aux manipulations suivantes:

1/on produit dans une boîte A la formule mathématique pour #2, au moyen de mathpalette pour gérer les displaystyle/etc.
2/on fabrique une boite B vide, de hauteur et profondeur identiques à celles de A et de largeur nulle.
3/ensuite ont produit une boîte qui contient la formule A^{#1}B, dans cette formule A et B sont de type MATHORD et le formattage produit donc invariablement les mêmes espaces horizontaux entre A et B (pour la même valeur de #1 bien entendu).
4/c'est prêt, régalez vous!

Pour écrire le code qui va derrière, il suffit de savoir se servir de mathpalette et des commandes sur les boîtes décrites à la fin de la not so short introduction to LaTeX.
la main gauche
Méga-utilisateur
 
Messages: 274
Inscription: Jeudi 30 Mars 2006, 07:44
Localisation: selon l'idéal de la liberté

Messagepar gigiair » Mercredi 29 Novembre 2006, 15:06

la main gauche a écrit:Je n'ai pas mes références LaTeX sous les yeux, mais voici la recette:

On définit une commande

Code: Tout sélectionner
\tr[#1]#2


pour transposée, le #1 est un argument optionnel dont la valeur implicite est t. Cette commande procède aux manipulations suivantes:


Est-il bien nécessaire de réinventer la roue ?
http://groups.google.fr/group/comp.text ... urce&hl=fr
--
JJR.
gigiair
Exa-utilisateur
 
Messages: 2295
Inscription: Samedi 08 Juillet 2006, 19:56
Localisation: Saint Bonnet Elvert
Statut actuel: Actif et salarié

Messagepar la main gauche » Mercredi 29 Novembre 2006, 15:52

gigiair a écrit:Est-il bien nécessaire de réinventer la roue ?

Je ne comprend vraiment pas ce que tu veux dire. Peux-tu t'expliquer?
la Main Gauche
la main gauche
Méga-utilisateur
 
Messages: 274
Inscription: Jeudi 30 Mars 2006, 07:44
Localisation: selon l'idéal de la liberté

Messagepar gigiair » Mercredi 29 Novembre 2006, 16:24

la main gauche a écrit:
gigiair a écrit:Est-il bien nécessaire de réinventer la roue ?

Je ne comprend vraiment pas ce que tu veux dire. Peux-tu t'expliquer?

Ben si tu suis les liens que j'indique, tu comprendra, \prescript (du package mathtools) fait le travail.
http://www.tug.org/tex-archive/macros/l ... htools.pdf
§4.2 page 18.
--
JJR.
gigiair
Exa-utilisateur
 
Messages: 2295
Inscription: Samedi 08 Juillet 2006, 19:56
Localisation: Saint Bonnet Elvert
Statut actuel: Actif et salarié

Messagepar la main gauche » Mercredi 29 Novembre 2006, 16:54

Tu voulais dire ``quelqu'un d'autre l'à déjà fait, regarde là:'' alors. C'est très différent.
la Main Gauche
la main gauche
Méga-utilisateur
 
Messages: 274
Inscription: Jeudi 30 Mars 2006, 07:44
Localisation: selon l'idéal de la liberté

Messagepar guiguiche » Mercredi 29 Novembre 2006, 19:09

Heu, j'apporte deux paires de gants de boxe ? :lol: :lol: :lol:
Pas d'aide par MP : les questions sont publiques, les réponses aussi.
Tu as apprécié l'aide qui t'a été fournie ? Alors n'hésite pas à rendre la pareille à quelqu'un d'autre.
Un peu d'autopromotion.
guiguiche
Modérateur
 
Messages: 8019
Inscription: Vendredi 06 Janvier 2006, 15:32
Localisation: Le Mans
Statut actuel: Actif et salarié | Enseignant

Suivante

Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot], Google Adsense [Bot], Proximic [Spider] et 35 invités