Línea múltiple tipo escalera

Línea múltiple tipo escalera

El multlineentorno alinea la primera línea a la izquierda, la última a la derecha, mientras que todas las líneas intermedias simplemente están centradas. El resultado a veces no parece satisfactorio, por ejemplo, cuando todas las líneas son ligeramente más anchas que la mitad del ancho del texto.

multilínea estándar

Lo que estoy buscando es una herramienta para que parezca más "escalera", como en la imagen de abajo, pero sin agregar elementos seleccionados manualmente \hspace{...}en cada línea.

Línea múltiple ajustada

Sé que hay todo tipo de excepciones, como líneas demasiado anchas, etc., y no espero que la solución siempre produzca un resultado perfecto, pero debería haber algo que funcione en un caso "genérico". ¿Algunas ideas?

Respuesta1

Puede configurar cada línea en una macro que las distribuya "manualmente" usando algo como \setline[<align>]{<portion>}{<stuff>}lo que se define a continuación:

ingrese la descripción de la imagen aquí

\documentclass{article}

\usepackage{lipsum}

\newcommand{\setline}[3][c]{\hspace*{#2\linewidth}\makebox[0pt][#1]{#3}}
\newenvironment{spreadlines}
  {\par
   \setlength{\parindent}{0pt}%
   \obeylines}
  {\par}

\begin{document}

\lipsum[1]

\begin{spreadlines}
  \setline[l]{0}  {The first line is aligned to the left.}
  \setline   {.25}{The second line is (not) centred.}
  \setline   {.5} {And so is the third one.}
  \setline   {.75}{As well as the fourth --- not centred!}
  \setline[r]{1}  {The last line is aligned to the right.}
\end{spreadlines}

\lipsum[2]

\end{document}

Probablemente sería posible determinar el valor {<portion>}automáticamente, si fuera necesario.

Respuesta2

El paquete mathtoolsproporciona una opción \shoveleft[<ofset>]{<part of equation>}mediante la cual puede obtener fácilmente escaleras como multline: ingrese la descripción de la imagen aquí

Código basado en el ejemplo del manual de Mathtools (pág. 17):

\documentclass[11pt, border=1mm,
               preview]{standalone}
    \usepackage{mathtools}

    \begin{document}
\[
\begin{multlined}
\framebox[.65\columnwidth]{First line} \\
\shoveleft[1cm]{\framebox[.5\columnwidth]{Second line} } \\
\shoveleft[2cm]{\framebox[.5\columnwidth]{Second line} } \\
\shoveleft[3cm]{\framebox[.5\columnwidth]{Second line} } \\
\framebox[.65\columnwidth]{Last line}
\end{multlined}
\]
    \end{document}

información relacionada