chemfig und Schriftarten/Schriftstile bzw. Schriftgröße

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


Benutzeravatar
dieg0
Forum-Anfänger
Forum-Anfänger
Beiträge: 21
Registriert: Mo 20. Aug 2012, 01:05
Wohnort: Dresden
Kontaktdaten:

chemfig und Schriftarten/Schriftstile bzw. Schriftgröße

Beitrag von dieg0 »

Hi,

ich benutze das Paket chemfig, um Strukturformeln zu zeichnen. Ich habe ein bisschen mit möglichen Stilen der Strukturformeln herumprobiert und bspw. Bindungslänge und Doppelbindungsabstand angepasst. Mit \setatomsep{1.3em} habe ich nun kleinere Bindungslängen (2em sind so weit ich weiß Standard) und nun passt mir vor allem die Schriftgröße nicht. Die Atomsymbole sind nun zu groß im Verhältnis zu der Größe der Strukturformeln. Und ich finde keine Möglichkeit, die Schriftgröße global für chemfig-Formeln einzustellen. Genauso scheitere ich an einer Möglichkeit, die Buchstaben nicht kursiv darzustellen.
Vielleicht habt ihr eine Lösung?

Hier ist noch ein Minimalbeispiel:
\documentclass[a4paper,parskip,toc=bib,automark]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[ngerman]{translator}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{amsmath,amssymb,amstext}
\usepackage{chemmacros}
\usepackage{chemfig}
	\setatomsep{1.3em}
	\setdoublesep{3pt}
	\setbondstyle{semithick}
	\setcrambond{3pt}{0.5pt}{1pt}
	\setchemrel{2pt}{0.7em}{10em}
	\setarrowdefault{,1.1,}

\begin{document}
\schemestart
\chemfig{*6(-=-(-[:30]-[:-30]N(-[6]H)(-[:30](=[2]O)-[:-30]-[:30]N(-[2]-[1])(-[:-30](=[6]O)-[:30]OH)))=-=)}
\arrow{<=>[$-$\ch{CO2}]}
\chemfig{*6(-=-(-[:30]-[:-30]N(-[6]H)(-[:30](=[2]O)-[:-30]-[:30]N(-[2]-[1])(-[:-30]H)))=-=)}
\schemestop
\end{document}

Viele Grüße,
Diego

Benutzeravatar
cgnieder
Forum-Meister
Forum-Meister
Beiträge: 730
Registriert: Fr 22. Okt 2010, 18:37
Wohnort: Herrenberg
Kontaktdaten:

Beitrag von cgnieder »

Ich weiß nicht, was Du mir kursiven Buchstaben meinst, denn mit Deinem Beispiel erhalte ich keine kursiven Buchstaben.

Da Du chemmacros verwendest, magst Du vielleicht das folgende machen:
\makeatletter
\def\CF@node@content{%
  \expandafter\expandafter\expandafter
    \printatom\expandafter\expandafter\expandafter
      {\csname atom@\number\CF@cnt@atomnumber\endcsname}%
    \ensuremath{\CF@node@strut}%
}
\makeatother
\renewcommand*\printatom[1]{\ch{#1}}
Damit würde chemfig den chemmacros-Befehl \ch zum Darstellen der Atome verwenden. Du könntest dann auch
\renewcommand*\printatom[1]{\ch[format=\small]{#1}}
sagen, was alle chemfig Atome klein darstellen würde (unabhängig von der umgebenden Schriftgröße!)

Die Variante ohne chemmacros wäre
\renewcommand*\printatom[1]{\small\ensuremath{\mathrm{#1}}}
dann kannst Du auch den Code zwischen \makeatletter und \makeatother weglassen. Auch hier ist die Schriftgröße dann global geändert und unabhängig von der umgebenden Schriftgröße!

Grüße

PS der Code stammt z.T. von hier
Clemens
Paketauthor

Benutzeravatar
dieg0
Forum-Anfänger
Forum-Anfänger
Beiträge: 21
Registriert: Mo 20. Aug 2012, 01:05
Wohnort: Dresden
Kontaktdaten:

Beitrag von dieg0 »

Oh, Entschuldigung. Kursiv ist da nichts. Ich meinte natürlich, dass ich die serifenlose Variante haben möchte. Deshalb habe ich jetzt \mathsf statt \mathrm genommen:
\renewcommand*\printatom[1]{\small\ensuremath{\mathsf{#1}}}
Wen es interssiert: So sehen jetzt meine Einstellungen für chemfig aus. Keine Serifen finde ich persönlich schöner in diesem einen Fall.
\usepackage{chemfig}						% Strukturformeln
	\setatomsep{1.3em}				% Bindungslänge
	\setbondoffset{1.5pt}				% Abstand Bindung - Atom
	\setdoublesep{2.5pt}				% Doppelbindungsabstand
	\setbondstyle{semithick}			% Liniendicke
	\setcrambond{3pt}{0.5pt}{1pt}		% Keile in Keilstrichformeln
	\setchemrel{2pt}{0.7em}{10em}	% \chemrel-Pfeil: Vertikalabstand, Horizontalabstand, Länge
	\setarrowdefault{,1.1,}			% \arrow: [[angle,Länge,style]
\renewcommand*\printatom[1]{\small\ensuremath{\mathsf{#1}}}
Mal noch eine Zusatzfrage: Wie könnte man eine komplett andere Schriftart nur für chemfig einstellen? Also z. B. Helvetica, auch wenn das nicht die eingestellte serifenlose Schrift für das Dokument ist.

Schonmal Danke, für die bisherige Antwort. Das war genau das, was ich gebraucht habe. :D

Grüße,
Diego

Antworten