
Ich möchte einen Satzteil zentrieren (auch linksbündig und rechtsbündig ausrichten)innerhalbeinen Absatz, was in Word ganz einfach durch erledigt werden kann [newline] + [center this line] + [newline]
. In LaTeX centering
wirkt sich der Befehl jedoch auf den gesamten Absatz aus, und um nur Gruppen zu beeinflussen, ist ein \par
am Anfang und am Ende dieser Gruppe erforderlich. In der Zwischenzeit center
fügt die Umgebung zusätzlichen vertikalen Abstand hinzu. Ich weiß, dass es einen Befehl gibt centerline
, der meinen Anforderungen entspricht, aber es scheint, dass es keine Entsprechungen in Bezug auf „linksbündig“ oder „rechtsbündig“ gibt. Hier ist das MWE:
\documentclass{article}
\begin{document}
I want to center\\
"This piece of text"\\
within this paragraph.
I don't want to break the
{\par\centering paragraph like\par}
this.
How to achieve the effect\\
\centerline{without \texttt{centerline}}\\
or \begin{center}
the \texttt{center} environment?
\end{center}
\end{document}
Antwort1
Neue Antwort
Wie betont von@campaSie müssen keine eigenen Gegenstücke definieren, da diese bereits in LaTeX enthalten sind und \leftline
und heißen \rightline
. Sie können also
\documentclass[]{article}
\begin{document}
\hsize=5cm % just so that line breaks are a bit earlier
This is some longish text that is long and needs me to centre some
material\\
\centerline{here is center}
Also I'd like to display some stuff to the left\\
\leftline{here is left}
and to put something on the right\\
\rightline{here is right.}
\end{document}
Alte Antwort
Für die Nachwelt aufbewahrt.
Die Gegenstücke für Links- und Rechtsausrichtung können Sie durch Definition erhalten. Folgendes sollte genügen. Beachten Sie, dass nur Inhalte, die nicht breiter als eine Zeile sind, wie vorgesehen funktionieren. Innerhalb dieser \@@line
werden keine automatischen Zeilenumbrüche vorgenommen.
Falls Sie sich fragen, \hss
ist ein Kleber, derHhorizontalStretches oderSschrumpft nur so weit, wie nötig ist, damit der angegebene Raum ausgefüllt wird ( \@@line
ist ein einzelner Raum \hbox
, der so breit wie der aktuelle sein sollte \hsize
, also die Breite des Textes).
\documentclass[]{article}
\makeatletter
\newcommand\leftalignline[1]{\@@line{#1\hss}}
\newcommand\rightalignline[1]{\@@line{\hss#1}}
\makeatother
\begin{document}
\hsize=5cm % just so that line breaks are a bit earlier
This is some longish text that is long and needs me to centre some
material\\
\centerline{here is center}
Also I'd like to display some stuff to the left\\
\leftalignline{here is left}
and to put something on the right\\
\rightalignline{here is right.}
\end{document}