
Warum wird der durch den in der Umgebung enthaltenen Code vorgeschriebene Inhalt tabular
abgeschnitten (ganz rechts), wenn er mit standalone
der im folgenden MWE konfigurierten Dokumentklasse aufgerufen wird?
\documentclass[preview,border=7pt,active,tightpage]{standalone}
\usepackage{booktabs}
\usepackage{chemfig}
\usepackage{filecontents}
\usepackage[scaled]{helvet}
\begin{filecontents}{methane.tex}
\chemfig{
H% 2
-[:210]% 1
(
-[:210]H% 3
)
(
-[:300]H% 5
)
-[:120]H% 4
}
\end{filecontents}
% sans serif font
\renewcommand\familydefault{\sfdefault}
% define formula
\def\methane{\mathrm{CH_{4}}}
\begin{document}
\begin{center}
\begin{tabular}[]{lp{3.5cm}ccc}
\toprule
\textbf{Formula} & \textbf{Structure} & \textbf{Molar mass} (g mol$^{-1}$) & \textbf{Melting point} ($^{\circ}\mathrm{C}$) & \textbf{Boiling point} ($^{\circ}\mathrm{C}$) \\
\midrule%
$\methane$ & \begin{minipage}[]{1cm} \input{methane.tex} \end{minipage} & 16.043 & -182.50 & -161.50 \\ [2mm]
\bottomrule
\end{tabular}
\end{center}
\end{document}
Es handelt sich hierbei vermutlich um eine unzureichende Konfiguration standalone
meinerseits.
Antwort1
Um die Kürzung zu entfernen, habe ich center
im folgenden Beispiel die Umgebung sowie einige Klassenoptionen entfernt. Um die Warnung vor einer nicht gefüllten Box zu entfernen, habe ich außerdem die Breite der Minipage von 1cm
auf geändert \linewidth
. Mit dieser Einstellung erbt die Minipage automatisch die Breite der p
Spalte, in der sie verwendet wird.
\documentclass[border=7pt]{standalone}
\usepackage{booktabs}
\usepackage{chemfig}
\usepackage{filecontents}
\usepackage[scaled]{helvet}
\begin{filecontents}{methane.tex}
\chemfig{
H% 2
-[:210]% 1
(
-[:210]H% 3
)
(
-[:300]H% 5
)
-[:120]H% 4
}
\end{filecontents}
% sans serif font
\renewcommand\familydefault{\sfdefault}
% define formula
\def\methane{\mathrm{CH_{4}}}
\begin{document}
\begin{tabular}[]{lp{3.5cm}ccc}
\toprule
\textbf{Formula} & \textbf{Structure} & \textbf{Molar mass} (g mol$^{-1}$) & \textbf{Melting point} ($^{\circ}\mathrm{C}$) & \textbf{Boiling point} ($^{\circ}\mathrm{C}$) \\
\midrule%
$\methane$ & \begin{minipage}[]{\linewidth} \input{methane.tex} \end{minipage} & 16.043 & -182.50 & -161.50 \\ [2mm]
\bottomrule
\end{tabular}
\end{document}
Für den Satz chemischer Formeln empfehle ich die Verwendung von mhchem
(oder chemformula
) und für die Einheiten, die ich verwenden würde sinuintx
. Ich habe beide in das folgende Beispiel aufgenommen:
\documentclass[border=7pt]{standalone}
\usepackage{booktabs}
\usepackage{chemfig}
\usepackage{filecontents}
\usepackage[scaled]{helvet}
\usepackage[version=4]{mhchem}
\usepackage{siunitx}
\begin{filecontents}{methane.tex}
\chemfig{
H% 2
-[:210]% 1
(
-[:210]H% 3
)
(
-[:300]H% 5
)
-[:120]H% 4
}
\end{filecontents}
% sans serif font
\renewcommand\familydefault{\sfdefault}
% define formula
\def\methane{\ce{CH4}}
\begin{document}
\begin{tabular}[]{lp{3.5cm}ccc}
\toprule
\textbf{Formula} & \textbf{Structure} & \textbf{Molar mass} (\si{\gram\per\mole}) & \textbf{Melting point} (\si{\celsius}) & \textbf{Boiling point} (\si{\celsius}) \\
\midrule%
$\methane$ & \begin{minipage}[]{\linewidth} \input{methane.tex} \end{minipage} & 16.043 & -182.50 & -161.50 \\ [2mm]
\bottomrule
\end{tabular}
\end{document}
Antwort2
Sie können spezialisierte Pakete verwenden, anstatt preview
die Tabelle nicht zu verwenden und einfach zu setzen. Anstelle eines , minipage
bei dem die Breite geschätzt werden muss, verwenden Sie ein verschachteltes tabular
.
\documentclass[margin=4]{standalone}
\usepackage{booktabs}
\usepackage{chemfig,chemformula,siunitx}
\usepackage{filecontents}
\usepackage[scaled]{helvet}
\begin{filecontents}{methane.tex}
\chemfig{
H% 2
-[:210]% 1
(
-[:210]H% 3
)
(
-[:300]H% 5
)
-[:120]H% 4
}
\end{filecontents}
% sans serif font
\renewcommand\familydefault{\sfdefault}
\begin{document}
\begin{tabular}{
l
c
S[table-format=2.3]
S[table-format=-3.2]
S[table-format=-3.2]
}
\toprule
\textbf{Formula} &
\textbf{Structure} &
{\textbf{Molar mass} (\si{\gram\per\mol})} &
{\textbf{Melting point} (\si{\celsius})} &
{\textbf{Boiling point} (\si{\celsius})} \\
\midrule
\ch{CH4} & \begin{tabular}{@{}c@{}}\input{methane.tex}\end{tabular} & 16.043 & -182.50 & -161.50 \\
\bottomrule
\end{tabular}
\end{document}
Antwort3
Leicht modifiziert @leandriisAntwort:
\documentclass[border=7pt]{standalone}
\usepackage[scaled]{helvet}
\renewcommand\familydefault{\sfdefault}
\usepackage{booktabs, makecell}
\renewcommand\theadfont{\small\bfseries}
\renewcommand\theadgape{}
\setcellgapes{3pt}
\makegapedcells
\usepackage{chemfig}
\newcommand\methane{\chemfig{H -[:0]C (-[:90]H)(-[:270]H)(-[:0]H)}}
\usepackage[version=4]{mhchem}
\usepackage{siunitx}
\begin{document}
\setchemfig{atom sep=2em}
\begin{tabular}[]{l c SSS}
\toprule
\thead{Formula}
& \thead{Structure}
& {\thead{Molar mass\\ (\si{\gram\per\mole})}}
& {\thead{Melting point\\ (\si{\celsius})}}
& {\thead{Boiling point\\ (\si{\celsius})}} \\
\midrule
\ce{CH4} & \methane
& 16.043 & -182.50 & -161.50 \\
\bottomrule
\end{tabular}
\end{document}
Wie ich in meinem Kommentar unter der Frage angemerkt habe, liegt die Ursache Ihres Problems in der verwendeten Umgebungsvorschau center
„ Tightpage siunitx makecell“ für kompaktere Spaltenüberschriften.. Also options options
and
are superfluous. The package
is also exploited for numbers in your table, and