Hinweise zur Verwendung eines Standalone-Pakets mit tabellarischer Umgebung

Hinweise zur Verwendung eines Standalone-Pakets mit tabellarischer Umgebung

Warum wird der durch den in der Umgebung enthaltenen Code vorgeschriebene Inhalt tabularabgeschnitten (ganz rechts), wenn er mit standaloneder 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 standalonemeinerseits.

Antwort1

Um die Kürzung zu entfernen, habe ich centerim 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 1cmauf geändert \linewidth. Mit dieser Einstellung erbt die Minipage automatisch die Breite der pSpalte, 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 previewdie Tabelle nicht zu verwenden und einfach zu setzen. Anstelle eines , minipagebei 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}

Bildbeschreibung hier eingeben

Antwort3

Leicht modifiziert @leandriisAntwort:

Bildbeschreibung hier eingeben

\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 optionsandare superfluous. The packageis also exploited for numbers in your table, and

verwandte Informationen