Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Leerzeilen um Aufzählungen entfernen!?

  1. #1
    Registrierter Benutzer
    Registriert seit
    24.05.2009
    Beiträge
    174

    Leerzeilen um Aufzählungen entfernen!?

    Hab eine Frage zu Aufzählungen: In der DIN 5008 steht z. B., dass man Beginn und Ende der Aufzählungen vom übrigen Text durch eine Leerzeile trennen soll. Wenn allerdings in z. B. einer Tabelle kein übriger Text vorhanden ist? Hier ein Minimalbeispiel:

    Code:
    \documentclass[12pt,paper=a4]{scrartcl}
    \usepackage[ngerman]{babel}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    
    \usepackage{booktabs}
    \usepackage{blindtext}
    \usepackage{tabularx}
    \usepackage{paralist}
    %
    %
    \begin{document}
    %
    %
    \begin{tabularx}{\textwidth}{XXX}
    	\toprule
    	\blindtext
    	& 
    	\begin{itemize}
    		\item Text 
    		\item Text
    	\end{itemize}
    	&
    	\begin{compactitem} 
    		\item Text 
    		\item Text 
    	\end{compactitem}
    	\\
    	\bottomrule
    \end{tabularx}
    %
    %
    \end{document}
    Bei der itemize-Umgebung ist die Leerzeile ja schon sehr groß. Sieht nicht besonders schön aus. Bei der compactitem-Umgebung ist der Abstand etwas kleiner. Wie würdet ihr das machen? Gibt es da Empfehlungen? (Duden oder DIN etc.) Wie könnte man den Abstand um die Liste komplett empfehlen?

  2. #2
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    ich würde mir etwas in dieser Art zusammenzimmern:
    Code:
    \documentclass[12pt,paper=a4]{scrartcl}
    \usepackage[ngerman]{babel}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    
    \usepackage{booktabs}
    \usepackage{blindtext}
    \usepackage{tabularx}
    %
    \newif\iftifirst
    \tifirstfalse
    \newlength\tiwidth
    \newenvironment{tabitem}{%
      \tifirsttrue
      \newcommand\titem[1][\textbullet]{%
        \iftifirst
          \typeout{+++ first line detected (\the\hsize/\the\tiwidth)}%<-- nur zur Kontrolle
          \global\tifirstfalse
        \else
          \tabularnewline% vorherige Zeile beenden
        \fi
        ##1&%
      }%
      \settowidth\tiwidth{\textbullet}%
      \addtolength\tiwidth{2\tabcolsep}%
      \setlength\tiwidth{-\tiwidth}%
      \addtolength\tiwidth{\hsize}% \tiwidth = \hsize - 2\tabcolsep - Breite(\textbullet)
      \begin{tabular}[t]{@{}rp{\tiwidth}@{}}}
      {\end{tabular}}
    %
    \begin{document}
    %
    %
    \noindent%<-- damit die tabularx-Umgebung nicht nach rechts rausgeschoben wird
    \begin{tabularx}{\textwidth}{XXX}
    	\toprule
    	\blindtext
    	& 
    	\begin{itemize}
    		\item Text 
    		\item Text
    	\end{itemize}
    	&
    	\begin{tabitem}
    		\titem Text 
    		\titem hier ein etwas längerer Text, damit auch ein Zeilenumbruch zustande kommt
    		\titem bla
    	\end{tabitem}
    	\\
    	\bottomrule
    \end{tabularx}
    %
    %
    \end{document}
    VG
    Rainer
    There's nothing a good whack with a hammer won't fix!

  3. #3
    Registrierter Benutzer
    Registriert seit
    24.05.2009
    Beiträge
    174
    Vielen Dank! Ich hätte wirklich gedacht, dass das einfacher geht. Ist der Abstand des Textes nach oben zur \toprule eigentlich exakt gleich?

  4. #4
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.859
    Zitat Zitat von fünfhaus Beitrag anzeigen
    Ich hätte wirklich gedacht, dass das einfacher geht.
    Gerade bei LaTeX gibt es oft diverse Möglichkeiten, ein Ziel zu erreichen... für mich war es in diesem Fall `einfacher', die Liste als Tabelle auszugeben, als zu schauen, woher dieser vertikale Abstand bei der ursprünglichen Liste konkret herkam.
    Es muss ja nicht `die' Lösung sein ;-)
    Zitat Zitat von fünfhaus Beitrag anzeigen
    Ist der Abstand des Textes nach oben zur \toprule eigentlich exakt gleich?
    Das hängt von den verwendeten Texten ab: nicht alle Buchstaben haben die gleiche Höhe.
    Die Grundlinien der jeweils ersten Zeile sind jedenfalls aneinander ausgerichtet.
    Ich hab da mal ein paar Hilfslinien ergänzt:
    Code:
    \documentclass[12pt,paper=a4]{scrartcl}
    \usepackage[ngerman]{babel}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    
    \usepackage{booktabs}
    \usepackage{blindtext}
    \usepackage{tabularx}
    \usepackage{xcolor}
    %
    \newif\iftifirst
    \tifirstfalse
    \newlength\tiwidth
    \newlength\foo
    \newenvironment{tabitem}{%
      \tifirsttrue
      \newcommand\titem[1][\textbullet]{%
        \iftifirst
          \typeout{+++ first line detected (\the\hsize/\the\tiwidth)}%<-- nur zur Kontrolle
          \global\tifirstfalse
        \else
          \tabularnewline% vorherige Zeile beenden
        \fi
        ##1&%
      }%
      \settowidth\tiwidth{\textbullet}%
      \addtolength\tiwidth{2\tabcolsep}%
      \setlength\tiwidth{-\tiwidth}%
      \addtolength\tiwidth{\hsize}% \tiwidth = \hsize - 2\tabcolsep - Breite(\textbullet)
      \begin{tabular}[t]{@{}rp{\tiwidth}@{}}}
      {\end{tabular}}
    %
    \begin{document}
    %
    %
    \noindent%<-- damit die tabularx-Umgebung nicht nach rechts rausgeschoben wird
    \begin{tabularx}{\textwidth}{XXX}
    	\toprule
    	\makebox[0pt][l]{\color{red!75!black}\rule{2.9\hsize}{0.4pt}{\tiny Grundlinie}}%
    	\makebox[0pt][l]{\raisebox{1ex}{\color{blue!70}\rule{3\hsize}{0.4pt}}}% Höhe von x
    	\settoheight\foo{t}%
    	\makebox[0pt][l]{\raisebox{\foo}{\color{blue!45}\rule{3\hsize}{0.4pt}}}% Höhe von t
    	\settoheight\foo{l}%
    	\makebox[0pt][l]{\raisebox{\foo}{\color{blue!25}\rule{3\hsize}{0.4pt}}}% Höhe von l
    	\blindtext
    	& 
    	\begin{itemize}
    		\item Text 
    		\item Text
    	\end{itemize}
    	&
    	\begin{tabitem}
    		\titem Text 
    		\titem hier ein etwas längerer Text, damit auch ein Zeilenumbruch zustande kommt
    		\titem bla
    	\end{tabitem}
    	\\
    	\bottomrule
    \end{tabularx}
    %
    %
    \end{document}
    Ggf. verschiebt die hier oberste Hilfslinie das Ergebnis (im Vergleich zu vorher) um deren Linienstärke nach unten, das hab ich jetzt nicht geprüft und ist auch eher nebensächlich. Lass sie ggf. weg für eine direkte Gegenüberstellung vorher/nachher.

    VG
    Rainer
    There's nothing a good whack with a hammer won't fix!

  5. #5
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Code:
    \documentclass[12pt,paper=a4]{scrartcl}
    \usepackage[ngerman]{babel}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    
    \usepackage{booktabs}
    \usepackage{blindtext}
    \usepackage{tabularx}
    \usepackage{paralist}
    %
    %
    \begin{document}
    %
    %
    \begin{tabularx}{\textwidth}{XXX}
    	\toprule
    	\blindtext
    	&\csname @minipagetrue\endcsname
    	\begin{itemize}
    		\item Text
    		\item Text
    	\end{itemize}
    	&\csname @minipagetrue\endcsname
    	\begin{compactitem}
    		\item Text
    		\item Text
    	\end{compactitem}
    	\\
    	\bottomrule
    \end{tabularx}
    %
    %
    \end{document}

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •