0

I was trying to center a line inside a \parshape using \\\hbox{}\hfill...\hfill\hbox{}\\, most of the time it works smoothly but sometimes the centered line is divided into two parts, as you can see in the screen capture below:

enter image description here

What is incredible is that when I remove a single word from the paragraph underneath the centered line, it becomes a single line again:

enter image description here

Here is the code of my file:

\documentclass{article}
\begin{document}

\lefthyphenmin3
\righthyphenmin3
\overfullrule20pt
\language1
\small

\vskip-\baselineskip\parshape 35 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 11.5cm \noindent  Au final, je r\'eutiliserai le proverbe populaire
\'ecul\'e selon lequel on a raison de se louer soi-m\^eme quand on ne trouve personne pour
le faire. \\\leavevmode\hbox to3.75mm{} Je profite de l'occasion pour me plaindre de
l'ingratitude {---} ou plut\^ot de la paresse {---} des hommes. Ils me rendent tous un
culte assidu et re\c{c}oivent mes bienfaits en \'echange. Malgr\'e cela,  bla bla bla bla
bla bla bla bla bla bla louanges de Busiris, de Phalaris, des fi\`evres quartes, des
mouches, de la calvitie et de toutes sortes de calamit\'es. Et ils y ont d\'epens\'e
beaucoup d'huile et de sommeil. Vous allez donc entendre mon discours \`a l'\'etat brut et
improvis\'e, mais il n'en sera que plus sinc\`ere.\\\hbox{}\hfill[4. D\'efinition du
sujet]\hfill\hbox{}\\\leavevmode\hbox to3.75mm{} Ne croyez pas que j'invente cela par
pr\'eten\-tion, pour imiter le tout venant des orateurs. Vous les connaissez, ils ont
pr\'epar\'e leur discours pendant trente ans (quand ils ne l'ont pas copi\'e sur quelqu'un
d'autre) et ils vous soutiennent qu'ils l'ont compos\'e par jeu en trois jours, ou m\^eme
qu'ils l'ont dict\'e. Moi, en revanche, mon plaisir a toujours \'et\'e de dire \emph{hoti}
\emph{an} \emph{\'epi} \emph{gl{\=o}ttan} \emph{\'eltho\"\i.} Alors, n'attendez pas de moi
que je commence par une d\'efini\-tion, comme le premier rh\'eteur venu, et encore moins
par l'annonce des parties. En effet, comment

\end{document}

I would like to know why this happens, and most importantly how to avoid this strange phenomenon.

1

You need to prevent line breaks in the line, I put it in an \mbox here.

enter image description here

\documentclass{article}
\begin{document}

\lefthyphenmin3
\righthyphenmin3
\overfullrule20pt
\language1
\small

\vskip-\baselineskip\parshape 35 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm 6.5cm 0cm
6.5cm 0cm 6.5cm 0cm 11.5cm \noindent  Au final, je r\'eutiliserai le proverbe populaire
\'ecul\'e selon lequel on a raison de se louer soi-m\^eme quand on ne trouve personne pour
le faire. \\\leavevmode\hbox to3.75mm{} Je profite de l'occasion pour me plaindre de
l'ingratitude {---} ou plut\^ot de la paresse {---} des hommes. Ils me rendent tous un
culte assidu et re\c{c}oivent mes bienfaits en \'echange. Malgr\'e cela,  bla bla bla bla
bla bla bla bla bla bla louanges de Busiris, de Phalaris, des fi\`evres quartes, des
mouches, de la calvitie et de toutes sortes de calamit\'es. Et ils y ont d\'epens\'e
beaucoup d'huile et de sommeil. Vous allez donc entendre mon discours \`a l'\'etat brut et
improvis\'e, mais il n'en sera que plus sinc\`ere.\\\hbox{}\nobreak\hfill\mbox{[4. D\'efinition du
sujet]}\nobreak\hfill\hbox{}\\\leavevmode\hbox to3.75mm{} Ne croyez pas que j'invente cela par
pr\'eten\-tion, pour imiter le tout venant des orateurs. Vous les connaissez, ils ont
pr\'epar\'e leur discours pendant trente ans (quand ils ne l'ont pas copi\'e sur quelqu'un
d'autre) et ils vous soutiennent qu'ils l'ont compos\'e par jeu en trois jours, ou m\^eme
qu'ils l'ont dict\'e. Moi, en revanche, mon plaisir a toujours \'et\'e de dire \emph{hoti}
\emph{an} \emph{\'epi} \emph{gl{\=o}ttan} \emph{\'eltho\"\i.} Alors, n'attendez pas de moi
que je commence par une d\'efini\-tion, comme le premier rh\'eteur venu, et encore moins
par l'annonce des parties. En effet, comment

\end{document}
| improve this answer | |
  • The trick is the \nobreak, great, thanks David! But where does this comes from? Why does a word at the bottom of the paragraph change the behavior of the centered line (while the line breaking in the paragraph doesn't change at all)? – yannis May 6 '18 at 18:13
  • well line breaking is a least cost calculation over the whole paragraph so it's not surprising that a word later affects the line breaking earlier on, but I didn't trace the exact line breaking (\tracingparagraphs=1) @yannis – David Carlisle May 6 '18 at 19:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.