Re: \hbox \mbox et \dotfill

Liste des GroupesRevenir à fct tex 
Sujet : Re: \hbox \mbox et \dotfill
De : francois.patte (at) *nospam* mi.parisdescartes.fr (François Patte)
Groupes : fr.comp.text.tex
Date : 29. Sep 2021, 10:45:16
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <sj192t$8g1$1@dont-email.me>
References : 1 2
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.1.0
Le 29/09/2021 à 03:49, Jean-Côme Charpentier a écrit :
Le 28/09/2021 à 19:34, François Patte a écrit :
Bonjour,
    bonjour,
 
\hbox \mbox "mangent" \dotfill (et, semble-t-il, tous les *fill).
    C'est ça. Plus exactement \hbox tout nu et \mbox annulent tout ce qui est élastique (en étirement ou compression) et, en particulier tout ce qui est *fill puisque cela utilise en interne un "plus1fill".
 
Y a-t-il moyen de remiéder à ça?
    Oui mais il faudrait savoir ce qu'on veut exactement. C'est quand même normal qu'une boîte interne ne puisse pas permettre des points de suite par défaut puisque sa largeur est celle de son contenu (sans élasticité). On peut forcer la main en imposant une largeur. Par exemple, si on reste à du TeX :
    \hbox to10cm{Coucou \dotfill}
 on peut aussi faire du LaTeX (c'est peut-être plus sûr si on ne connaît pas bien les modes de TeX) avec :
    \makebox[10cm]{Coucou \dotfill}
 Bien entendu, tout cela va être totalement indépendant de la largeur de ligne. Je ne sais pas si c'est bien cela qui est voulu !
Ah! Bien merci pour cette réponse et puisque c'est l'auteur de la macro qu'il a construite pour répondre à une de mes questions il y a quelques temps, je la re-soumets ici.
Voilà la macro:
  \newlength{\hauteur}
\newcommand\abaisse[2]{%
   \setlength{\hauteur}{%
     \dimexpr \arraystretch\ht\strutbox+\arraystretch\dp\strutbox
   }%
   \setbox2=\hbox{#1}%
   \setbox0=\hbox to\wd2{%
     \hsize=\wd2
     \vtop to \dimexpr \hauteur*#2{%
       \vss
       \hbox{#1}%
     }%
   }%
   \box0
}
C'était pour aligner du texte dans les cellules d'un tableau du type:
\begin{longtable}{rp{.7\textwidth}rrrr}
Et obtenir comme résultat:
1 | du texte sur
      plusieurs
      lignes           |  quelque chose | ....
(J'ai marqué les colonnes par un | bien que ça n'existe pas forcément dans le tableau).
J'ai tenté de remplacer les \hbox de la macro par des \hbox to 10cm pour voir: si on remplace les 2 ça donne un résultat bizarre (on sort des limites de la page), si on remplace seulement la 2ème ça pourrait le faire mais les pointillés ne s'adapte pas à la largeur de la colonne:
     \multicolumn{3}{l}{%
       \abaisse{Ainsi le total de mouvement moyen diurne du soleil
         est: \dotfill}{1}} & \multicolumn{3}{l}{%%
       \begin{tabular}[t]{@{}ccc}
         \textit{naj.} & \textit{vinaj.} &
         \textit{tarp.}\footnoteAmark\
         59 & 8 & 9
       \end{tabular}
Je me demande d'ailleurs pourquoi cette possibilité n'existe pas dans les tableaux (La)TeX car c'est pratique pour décrire un algorithme:
1ère col .: numéro des opérations
2ème col.: description de l'opération
autres col. : résultat de la première opération
etc.
À moins que pour faire ça, il existe un "paquet" qui prend en charge ce type de disposition.
--
François Patte
Université Paris Descartes

Date Sujet#  Auteur
28 Sep 21 * \hbox \mbox et \dotfill3François Patte
29 Sep 21 `* Re: \hbox \mbox et \dotfill2Jean-Côme Charpentier
29 Sep 21  `- Re: \hbox \mbox et \dotfill1François Patte

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal