3

I'm searching for (simple) method to get rid of the unbeatiful white spacing that is creating by using for example this minimal example.

\documentclass[12pt,a4paper]{article} 
\usepackage[latin1]{inputenc}
\usepackage{graphicx} %Grafiken
\usepackage{booktabs} %Professionelle Tabellen
\usepackage[para]{threeparttable} %Tabellen mit Legenden
\usepackage{tabularx} %automatische Zeilenumbruch ermöglicht
\begin{document}
    \begin{table}
        \caption{Übersicht der prinzipiellen Maschinenteile einer AM}
        \centering
        \label{uebersicht}
        \begin{tabularx}{\textwidth}{clX}
            \toprule
            Symbol & Bezeichnung  & Erläuterung \\ \midrule
            Dies ist Platz\\der über mehrere\\ zeilen geht und\\viel Spaß dabei hat & Bauplattform mit Hubtisch &   Die Bauplattform beinhaltet die Bauplatte, auf der das Bauteil gefertigt wird und einen Mechanismus zum bewegen der Bauplattform\\
            Dies ist Platz\\der über mehrere\\ zeilen geht und\\viel Spaß dabei hat & Material in Verwendung & Symbolisiert den Platz und die Art des verwendeten Materials \\
            Dies ist Platz\\der über mehrere\\ zeilen geht und\\viel Spaß dabei hat & Strahl-oder Energiequelle & Zeigt welche Energie oder Strahlquelle für den Prozess genutzt wird.  \\
            \bottomrule
        \end{tabularx}
    \end{table}
\end{document}

Example Picutre

The first column would be filled with pictures, the second with the title and the third with a description.

How can I get rid of the white space?

EDIT And I would like to have some spacing between the rows :) That would be perfect.

Thank you very much so far.

Your's sincerely, Tim

P.S. I also put it on golatex - a german community. Sorry

5
  • Crosspost to goLaTeX
    – Johannes_B
    Feb 15, 2015 at 14:00
  • latin1 is rather outdated, isn't it?
    – user31729
    Feb 15, 2015 at 14:02
  • @ChristianHupfer, why?
    – daleif
    Feb 15, 2015 at 14:44
  • @daleif: I've not seen it for a long time, at least I think I remember this way
    – user31729
    Feb 15, 2015 at 14:46
  • It is perfectly reasonable to use it. For example listings does not work fully with utf8 encoding, but work fine with latin1
    – daleif
    Feb 15, 2015 at 17:15

4 Answers 4

3

Using m-columns

To change the spacing, you can use the capabilities of package booktabs. Better would be to make a more generic change.

timTabularMitte2

\documentclass[12pt,a4paper,ngerman]{article} 
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx} 
\usepackage{babel} 
\usepackage{booktabs} 
\usepackage[para]{threeparttable} 
\usepackage{tabularx} 
\usepackage{mwe}
\renewcommand{\tabularxcolumn}[1]{>{\raggedright\arraybackslash}m{#1}}
\begin{document}
\begin{table}
    \caption{Übersicht der prinzipiellen Maschinenteile einer AM}
    \centering
    \label{uebersicht}
    \begin{tabularx}{\textwidth}{m{4cm}>{\raggedright}m{3cm}X}
        \toprule
        Symbol & Bezeichnung  & Erläuterung \\ \midrule
        \includegraphics[width=\linewidth]{example-image-1x1}& Bauplattform mit Hubtisch &   Die Bauplattform beinhaltet die Bauplatte, auf der das Bauteil gefertigt wird und einen Mechanismus zum bewegen der Bauplattform\\
        \includegraphics[width=\linewidth]{example-image-a}& Material
        in Verwendung & Symbolisiert den Platz und die Art des
        verwendeten Materials \\\addlinespace[3cm]
        \includegraphics[width=\linewidth]{example-image-b}&Strahl- oder Energiequelle & Zeigt welche Energie oder
Strahlquelle für den Prozess genutzt wird.  \\
        \bottomrule
    \end{tabularx}
\end{table}
\end{document}
1
  • Is this the correct way to add some spacing between the rows: \def\arraystretch{1.5}% Or is there a better way to this? Thank you very much :)
    – TimK
    Feb 15, 2015 at 15:10
3

Since you said images in first column, you can use adjustbox package with export option and align the images at the top.

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx} %Grafiken
\usepackage{booktabs} %Professionelle Tabellen
\usepackage[para]{threeparttable} %Tabellen mit Legenden
\usepackage{tabularx} %automatische Zeilenumbruch ermöglicht
\usepackage[export]{adjustbox}
\begin{document}
    \begin{table}
        \caption{Übersicht der prinzipiellen Maschinenteile einer AM}
        \centering
        \label{uebersicht}
        \begin{tabularx}{\textwidth}{clX}
            \toprule
            Symbol & Bezeichnung  & Erläuterung \\ \midrule
            \includegraphics[width=2cm,valign=t]{example-image-a} & Bauplattform mit Hubtisch &   Die Bauplattform beinhaltet die Bauplatte, auf der das Bauteil gefertigt wird und einen Mechanismus zum bewegen der Bauplattform\\
            \includegraphics[width=2cm,valign=t]{example-image-b} & Material in Verwendung & Symbolisiert den Platz und die Art des verwendeten Materials \\[4ex]
            \includegraphics[width=2cm,valign=t]{example-image-c} & Strahl-oder Energiequelle & Zeigt welche Energie oder Strahlquelle für den Prozess genutzt wird.  \\
            \bottomrule
        \end{tabularx}
    \end{table}
\end{document}

enter image description here

3

This can be set with the makecell package. It allows for line breaks in cells and adding vertical spacing between rows in preamble. Its \thead and \makecell commands also allow for common formatting of cells. I added the caption package to have a correct vertical spacing between caption and table.

If adding vertical spacing between rows doesn't work with the \makegapedcells command (it has some incompatibilities), you can use the cellspacepackage, which defines minimal vertical spacing between rows (above and below). All you have to do ids prefix the qualifiers of the relevant columns with the letter S (or C if you use siunitx.

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{graphicx} %Grafiken
\usepackage{booktabs} %Professionelle Tabellen
\usepackage[para]{threeparttable} %Tabellen mit Legenden
\usepackage{tabularx} %automatische Zeilenumbruch ermöglicht
\usepackage{makecell}
\renewcommand\cellalign{tc}
\renewcommand\theadfont{\bfseries}
\setcellgapes{5pt}

\usepackage{cellspace}
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{5pt}
\addparagraphcolumntypes{X}

\usepackage{caption}

\begin{document}

\begin{table}
    \caption{Übersicht der prinzipiellen Maschinenteile einer AM}
    \centering
    \label{uebersicht}
    \begin{tabularx}{\textwidth}{ScSlS{X}}
        \toprule
        \thead{Symbol} & \thead{Bezeichnung} &\thead{Erläuterung} \\ \midrule
        \makecell{Dies ist Platz\\der über mehrere\\ zeilen geht und\\viel Spaß dabei hat} & Bauplattform mit Hubtisch & Die Bauplattform beinhaltet die Bauplatte, auf der das Bauteil gefertigt wird und einen Mechanismus zum bewegen der Bauplattform\\
        \makecell{Dies ist Platz\\der über mehrere\\ zeilen geht und\\viel Spaß dabei hat} & Material in Verwendung & Symbolisiert den Platz und die Art des verwendeten Materials \\
        \makecell{Dies ist Platz\\der über mehrere\\ zeilen geht und\\viel Spaß dabei hat} & Strahl-oder Energiequelle & Zeigt welche Energie oder Strahlquelle für den Prozess genutzt wird. \\
        \bottomrule
    \end{tabularx}
\end{table}

\end{document} 

enter image description here

4
  • I do really like, that you cann correct the vertical spacing bewteen the rows. But with the /makegapedcells it's sadly crashing the export. I get about 50 Erros in the same row with Missing$ inserted. \end{tabularx} and Extra {, or forgotten $. \end{tabularx} Any idea what I've done wrong? (there's nothing missing - as long I deactive \makegapedcells it works
    – TimK
    Feb 15, 2015 at 14:52
  • 1
    You've done nothing wrong. This command seems to have some incompatibilities with other packages. You can try to use the cellspace package instead. See my updated answer and code.
    – Bernard
    Feb 15, 2015 at 15:09
  • I think this is a very good solution. I will try again if I get it working. But trying out cellspaceing resulted in the same problem. The minimal example is working nice. It seems I'm still doing somethings wrong with your method. But I'm trying thank you :D
    – TimK
    Feb 15, 2015 at 15:22
  • Probably a conflict with a package/command. Try commenting everything else out, then uncomment progressively until you localise the source of the conflict.
    – Bernard
    Feb 15, 2015 at 15:31
2
\documentclass[12pt,a4paper]{article} 
\usepackage[utf8]{inputenc}
\usepackage{graphicx} %Grafiken
\usepackage{booktabs} %Professionelle Tabellen
\usepackage[para]{threeparttable} %Tabellen mit Legenden
\usepackage{array}
\usepackage{ragged2e}
\usepackage{tabularx} %automatische Zeilenumbruch ermöglicht

\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}}
\newcolumntype{L}[1]{>{\centering\arraybackslash}p{#1}}
\begin{document}
    \begin{table}
        \caption{Übersicht der prinzipiellen Maschinenteile einer AM}
        \centering
        \label{uebersicht}
        \begin{tabularx}{\textwidth}{C{4cm}L{3cm}X}
            \toprule
            Symbol & Bezeichnung  & Erläuterung \\ \midrule
            Dies ist Platz der über mehrere zeilen geht und viel Spaß dabei hat & Bauplattform mit Hubtisch &   Die Bauplattform beinhaltet die Bauplatte, auf der das Bauteil gefertigt wird und einen Mechanismus zum bewegen der Bauplattform\\
            Dies ist Platz der über mehrere zeilen geht und viel Spaß dabei hat & Material in Verwendung & Symbolisiert den Platz und die Art des verwendeten Materials \\
            Dies ist Platz der über mehrere zeilen geht und viel Spaß dabei hat & Strahl-oder Energiequelle & Zeigt welche Energie oder Strahlquelle für den Prozess genutzt wird.  \\
            \bottomrule
        \end{tabularx}
    \end{table}
\end{document}

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .