Anscheinend läßt sich eine chemische Formel mit dem \chemfig
-Makro innerhalb einer \tikzpicture
-Umgebung immer dann nicht ausgeben, wenn man den Knoten mit der Option text width
versieht. Letztere ist aber erforderlich, um die Box über den gesamten Satzspiegel darzustellen (siehe Box 1).
Ohne die Option text width
läßt sich jedoch eine chemische Formel mit dem \chemfig
-Makro durchaus darstellen. Allerdigs wird dann die Box nicht über den gesamten Satzspiegel dargestellt. Ein Zeilenumbruch mit \par
läßt sich auch nicht setzen (siehe Box 2).
Das Chemie-Makro mhchem
scheint weniger problematisch zu sein. Hier läßt sich die Breite der Box einstellen und auch ein Zeilenumbruch realisieren, ohne dass die Formel fehlerhaft dargestellt wird. Anscheinend wird die Ausgabe des \ce
-Kommandos als Text aufgefasst (siehe Box 3).
\documentclass{scrartcl}
\usepackage[%
paperwidth=17cm,paperheight=24cm,
top=21mm,bottom=18mm,outer=28mm,inner=18mm,foot=12.5mm,head=9mm,
%showframe
]{geometry}
\usepackage{chemfig, mhchem}
\renewcommand*\printatom[1]{\ensuremath{\mathsf{#1}}}
\usepackage{tikz}
\usetikzlibrary{backgrounds}
\usepackage{color}
\begin{document}
\begin{flushleft}
\begin{tikzpicture}[show background rectangle]
\node[align=justify, text width=11.7cm, inner sep=.5em]{
\par Hier steht ein langer Text, der am Ende der Zeile umgebrochen wird. Das sollte auch funktionieren, wenn die Breite der Box eingestellt werden kann. Nur leider funktioniert das nicht, wenn eine chemische Formel mit mit dem Paket \verb+chemfig+ dieser Box gesetzt wird.\par\vspace{6pt}
Grundgerüst:\qquad\chemfig{C-C=O}\par\vspace{6pt}
Setzt man eine chemische Formel mit dem Paket \verb+mchchem+ läßt sie sich fehlerfrei darstellen.\par\vspace{6pt}
Propan:\qquad\ce{H3C-CH2-CH3}
};
\node [xshift=-1cm,yshift=-.7ex,overlay,fill=black, above right] at (current bounding box.north)
{\textcolor{white}{\textbf{\sffamily Box 1}}};
\end{tikzpicture}
\end{flushleft}
\par\vspace{12pt}
\begin{flushleft}
\begin{tikzpicture}[show background rectangle]
\node[inner sep=.5em]{
Essigsäure\hspace{1cm}\chemfig{H_3C-C(-[7]OH)=[1]O}\par\vspace{6pt}
Propan\hspace{1cm}\ce{H3C-CH2-CH3}
};
\node [xshift=-1cm,yshift=-.7ex,overlay,fill=black, above right] at (current bounding box.north)
{\textcolor{white}{\textbf{\sffamily Box 2}}};
\end{tikzpicture}
\end{flushleft}
\par\vspace{12pt}
\begin{flushleft}
\begin{tikzpicture}[show background rectangle]
\node[ text width=11.7cm, inner sep=.5em]{
\par Propan\hspace{18pt}\ce{H3C-CH2-CH3}\par\vspace{6pt}
Butan\hspace{18pt}\ce{H3C-CH2-CH2-CH3}
};
\node [xshift=-1cm,yshift=-.7ex,overlay,fill=black, above right] at (current bounding box.north)
{\textcolor{white}{\textbf{\sffamily Box 3}}};
\end{tikzpicture}
\end{flushleft}
\end{document}
gefragt
12 Sep '19, 11:24
Delorian
669●1●23●33
Akzeptiert-Rate:
17%
Warum benutzt Du für die Boxen nicht das Paket tcolorbox? Im Abschnitt 10.2.1 Boxed Title Placement der Dokumentation findest Du Optionen für die Ausrichtung des Titels.