Discussion:
Calcul de longueur d'un texte
(trop ancien pour répondre)
projetmbc
2022-10-24 10:54:35 UTC
Permalink
Bonjour.

Dans le code suivant, j'aimerai connaître la longueur de l'agument #2 qui est du type "texte développé", ceci afin de calculer la longueur de la 2nde ligne horizontale.

% ---- Code de départ --- %

\documentclass{article}

\newcommand\blabla{
Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla
}

\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}} \textbf{\,#2\,} \raisebox{2pt}{\rule{#1}{2pt}}\hfill\null

\blabla\

\null\hfill\raisebox{2pt}{\rule{120pt}{2pt}}\hfill\null
}


\begin{document}

\rulerstest{Titre court}

\bigskip

\rulerstest[2cm]{Titre trop long}

\end{document}
projetmbc
2022-10-24 10:56:06 UTC
Permalink
Post by projetmbc
Bonjour.
Dans le code suivant, j'aimerai connaître la longueur de l'agument #2 qui est du type "texte développé", ceci afin de calculer la longueur de la 2nde ligne horizontale.
% ---- Code de départ --- %
\documentclass{article}
\newcommand\blabla{
Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla
}
\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}} \textbf{\,#2\,} \raisebox{2pt}{\rule{#1}{2pt}}\hfill\null
\blabla\
\null\hfill\raisebox{2pt}{\rule{120pt}{2pt}}\hfill\null
}
\begin{document}
\rulerstest{Titre court}
\bigskip
\rulerstest[2cm]{Titre trop long}
\end{document}
J'ai oublié d'indiquer que la valeur à calculer sera celle remplaçant 120pt dans mon code de départ.
Denis Bitouzé
2022-10-24 11:12:58 UTC
Permalink
Post by projetmbc
Bonjour.
Bonjour,
Post by projetmbc
Dans le code suivant, j'aimerai connaître la longueur de l'agument #2 qui est du
type "texte développé", ceci afin de calculer la longueur de la 2nde ligne
horizontale.
Je ne suis pas certain d'avoir compris mais peut-être la commande
`\widthof` du package `calc` est-elle ce que vous cherchez. Cf. ce qui
se trouve dans l'environnement `center` que j'ai ajouté à votre
exemple :

--8<---------------cut here---------------start------------->8---
\documentclass{article}

\usepackage{calc}

\newcommand\blabla{
Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla
}

\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}} \textbf{\,#2\,} \raisebox{2pt}{\rule{#1}{2pt}}\hfill\null

\begin{center}
\textbf{#2}

\rule{\widthof{\textbf{#2}}}{2pt}
\end{center}

\blabla\

\null\hfill\raisebox{2pt}{\rule{120pt}{2pt}}\hfill\null
}


\begin{document}


\rulerstest{Titre court}

\bigskip

\rulerstest[2cm]{Titre trop long}

\end{document}
--8<---------------cut here---------------end--------------->8---
--
Denis
projetmbc
2022-10-24 11:23:00 UTC
Permalink
Post by Denis Bitouzé
Post by projetmbc
Bonjour.
Bonjour,
Post by projetmbc
Dans le code suivant, j'aimerai connaître la longueur de l'agument #2 qui est du
type "texte développé", ceci afin de calculer la longueur de la 2nde ligne
horizontale.
Je ne suis pas certain d'avoir compris mais peut-être la commande
`\widthof` du package `calc` est-elle ce que vous cherchez. Cf. ce qui
se trouve dans l'environnement `center` que j'ai ajouté à votre
--8<---------------cut here---------------start------------->8---
\documentclass{article}
\usepackage{calc}
\newcommand\blabla{
Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla
}
\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}} \textbf{\,#2\,} \raisebox{2pt}{\rule{#1}{2pt}}\hfill\null
\begin{center}
\textbf{#2}
\rule{\widthof{\textbf{#2}}}{2pt}
\end{center}
\blabla\
\null\hfill\raisebox{2pt}{\rule{120pt}{2pt}}\hfill\null
}
\begin{document}
\rulerstest{Titre court}
\bigskip
\rulerstest[2cm]{Titre trop long}
\end{document}
--8<---------------cut here---------------end--------------->8---
--
Denis
Merci Denis.

Ce que je voulais obtenir est ce qui suit.

--8<---------------cut here---------------start------------->8---
\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}}\textbf{\,#2\,}\raisebox{2pt}{\rule{#1}{2pt}}\hfill\null

\blabla

\null\hfill\raisebox{2pt}{\rule{#1*2+\widthof{\textbf{\,#2\,}}}{2pt}}\hfill\null
}
--8<---------------cut here---------------end--------------->8---
Denis Bitouzé
2022-10-24 11:29:01 UTC
Permalink
Post by projetmbc
Merci Denis.
Padkoi.
Post by projetmbc
Ce que je voulais obtenir est ce qui suit.
--8<---------------cut here---------------start------------->8---
\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}}\textbf{\,#2\,}\raisebox{2pt}{\rule{#1}{2pt}}\hfill\null
\blabla
\null\hfill\raisebox{2pt}{\rule{#1*2+\widthof{\textbf{\,#2\,}}}{2pt}}\hfill\null
}
--8<---------------cut here---------------end--------------->8---
Et ça a donc l'effet escompté ?
--
Denis
projetmbc
2022-10-24 11:32:14 UTC
Permalink
Post by Denis Bitouzé
Post by projetmbc
Merci Denis.
Padkoi.
Post by projetmbc
Ce que je voulais obtenir est ce qui suit.
--8<---------------cut here---------------start------------->8---
\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}}\textbf{\,#2\,}\raisebox{2pt}{\rule{#1}{2pt}}\hfill\null
\blabla
\null\hfill\raisebox{2pt}{\rule{#1*2+\widthof{\textbf{\,#2\,}}}{2pt}}\hfill\null
}
--8<---------------cut here---------------end--------------->8---
Et ça a donc l'effet escompté ?
--
Denis
Oui. Voici un fichier test.

--8<---------------cut here---------------start------------->8---
\documentclass{article}

\usepackage{calc}

\newcommand\blabla{
Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla
}

\newcommand\rulerstest[2][4cm]{
\null\hfill\raisebox{2pt}{\rule{#1}{2pt}}\textbf{\,#2\,}\raisebox{2pt}{\rule{#1}{2pt}}\hfill\null

\blabla

% Indication donné par D. Bitouzé sur fr.comp.text.tex .
\null\hfill\raisebox{2pt}{\rule{#1*2+\widthof{\textbf{\,#2\,}}}{2pt}}\hfill\null
}


\begin{document}


\rulerstest{Titre court}

\bigskip

\rulerstest{Titre trop long}

\bigskip

\rulerstest{Titre trop, trop, trop long}

\bigskip

\rulerstest[3cm]{Titre trop, trop, trop long}

\end{document}
--8<---------------cut here---------------end--------------->8---
Loading...