Wie kann die Regellänge in Tabellen angepasst werden?

Wie kann die Regellänge in Tabellen angepasst werden?

Ich möchte die Länge der Mittellinie (xy cm) in der ersten Tabelle anpassen. Die zweite Tabelle soll die Standardlänge sein. Wie geht das?

\documentclass{article}

\usepackage{booktabs}

\begin{document} 
\begin{tabular}{@{}ll@{}}
XXXXXXX&\\\midrule\addlinespace[1ex]
\begin{minipage}[t]{5.5cm}
AAAAAAAAAAAAA
\end{minipage}
&
\begin{minipage}[t]{9.5cm}
BBBBBBBBBBBBBBB
\end{minipage}
\end{tabular}

\bigskip
\begin{tabular}{@{}ll@{}}
YYYYYYYYYYYYY&\\\midrule\addlinespace[1ex]
\begin{minipage}[t]{5.5cm}
CCCCCCCCC
\end{minipage}
&
\begin{minipage}[t]{9.5cm}
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
\end{minipage}
\end{tabular}

\end{document}

BEARBEITEN:Erweiterung der ursprünglichen Frage! Während die Antworten das obige Problem lösen, gelingt es mir nicht, sie zur Lösung des folgenden Problems zu verwenden: Im zweiten Minimalbeispiel möchte ich, dass die Regel in der zweiten Tabelle genau dieselbe Länge hat wie in der ersten Tabelle (die erste Tabelle ist das Referenzformat). Wenn ich in der zweiten Tabelle \midruledurch ersetze \noalign{\noindent\rule{\dimexpr15cm+\tabcolsep\relax}{0.5pt}}, wie in der Antwort von @Christian Hupfer vorgeschlagen (beachten Sie, dass \llen+ \rlen= 15 cm), funktioniert es fast, aber die Länge der Zeilen ist immer noch nicht ganz gleich.

\documentclass{article}
\usepackage{booktabs}

\newlength{\llen}
\newlength{\rlen}
\setlength{\llen}{5.5cm}
\setlength{\rlen}{9.5cm}

\parindent=0cm

\begin{document}

\begin{tabular}{@{}ll@{}}
XXXXXXXXXXXXXXXXXXX &\\\midrule\addlinespace[1ex]
\begin{minipage}[t]{\llen}
AAAAAAAAAAAAAAA\\
\end{minipage}&
\begin{minipage}[t]{\rlen}
YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
\end{minipage}
\end{tabular}

\vspace{0.2cm}

\noindent
\begin{tabular}{@{}ll@{}}
XXXXXXXXXXXXXXXXXXX&\\\midrule\addlinespace[1ex]
WWWWWWWWWWWWWWWWWWWWWWWWWWWW 
\end{tabular}

\end{document}

Antwort1

Ist es das, was Sie wollen? Ich habe mit dem (lr)Argument für gespielt \cmidruleund einen (hier negativen) Beschnitt auf der rechten Seite verlangt, berechnet aus der Spaltenbreite, die dank der Minipage bekannt ist. Wenn sie nicht bekannt ist, müssen wir das Paket verwenden eqparbox.

\documentclass{article}

\usepackage{booktabs}

\begin{document}
\begin{tabular}{@{}ll@{}}
  XXXXXXX & \\\cmidrule[\lightrulewidth](r{\dimexpr5.5cm+\tabcolsep-7.75cm\relax}){1-1}\addlinespace[1ex]
  \begin{minipage}[t]{5.5cm}
  AAAAAAAAAAAAA
  \end{minipage}
          &
  \begin{minipage}[t]{9.5cm}
  BBBBBBBBBBBBBBB
  \end{minipage}
\end{tabular}

\bigskip
\begin{tabular}{@{}ll@{}}
  YYYYYYYYYYYYY & \\\midrule\addlinespace[1ex]
  \begin{minipage}[t]{5.5cm}
  CCCCCCCCC
  \end{minipage}
                &
  \begin{minipage}[t]{9.5cm}
  DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
  \end{minipage}
\end{tabular}

\end{document} 

Bildbeschreibung hier eingeben

Hier ist eine Lösung für das zweite Problem: Um das Tippen zu verkürzen, definiere ich einen \fakemidruleBefehl, der das tut, was Sie wollen. Ihr Fehler im Code, den Sie ausprobiert haben, ist, dass Sie vergessen haben, dass der Abstand zwischen zwei Spalten gleich 2\tabcolsep ist.

\documentclass{article}
\usepackage{booktabs}

\newlength{\llen}
\newlength{\rlen}
\setlength{\llen}{5.5cm}
\setlength{\rlen}{9.5cm}
\newcommand\fakemidrule{\noalign{\vskip\aboverulesep\noindent\rule{\dimexpr\llen + \rlen+2\tabcolsep\relax}{\lightrulewidth}}}
\parindent=0cm

\begin{document}

\begin{tabular}{@{}ll@{}}
  XXXXXXXXXXXXXXXXXXX & \\
  \midrule\addlinespace[1ex]
  \begin{minipage}[t]{\llen}
  AAAAAAAAAAAAAAA\\
  \end{minipage} &
  \begin{minipage}[t]{\rlen}
  YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
  \end{minipage}
\end{tabular}

\vspace{0.2cm}

\noindent
\begin{tabular}{@{}ll@{}}
  XXXXXXXXXXXXXXXXXXX & \\
  \fakemidrule
  \addlinespace[1ex]
  WWWWWWWWWWWWWWWWWWWWWWWWWWWW
\end{tabular}

\end{document} 

Bildbeschreibung hier eingeben

Antwort2

Mit kann eine Regel mit beliebiger Länge angegeben werden \rule{length}{width}, diese würde allerdings in der Tabellenzelle platziert werden.

Zum Verteilen auf die Zellen verwenden Sie \noalign{\noindent\rule{7.75cm}{2pt}}(ändern Sie die Abmessungen nach Belieben) (Danke an @touhami für den Hinweis mit \noindent)

\noalignverhindert die Ausrichtung in Zellen, der gesamte Inhalt wird dann grundsätzlich so gesetzt, als ob keine Tabellenzellen vorhanden wären, wobei die übliche \parindentEinrückung erhalten bleibt. Um dies zu vermeiden, \noindentkann verwendet werden (oder \parindentauf Null gesetzt werden)

\documentclass{article}

\usepackage{booktabs}

\begin{document} 
\begin{tabular}{@{}ll@{}}

XXXXXXX&\\
\noalign{\noindent\rule{7.75cm}{2pt}}\addlinespace[1ex]
\midrule\addlinespace[1ex]
\begin{minipage}[t]{5.5cm}
AAAAAAAAAAAAA
\end{minipage}
&
\begin{minipage}[t]{9.5cm}
BBBBBBBBBBBBBBB
\end{minipage}
\end{tabular}

\bigskip
\begin{tabular}{@{}ll@{}}
YYYYYYYYYYYYY&\\\midrule\addlinespace[1ex]
\begin{minipage}[t]{5.5cm}
CCCCCCCCC
\end{minipage}
&
\begin{minipage}[t]{9.5cm}
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
\end{minipage}
\end{tabular}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen