Wikipedia:Wie erstelle ich Strukturformeln?/Tutorial Strukturformeln

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Abkürzung: WP:WEIS/TUT
Anleitung für verschiedene Softwarepakete

Dieses Tutorial fasst zusammen, wie mit Hilfe verschiedener Softwarepakete zur Erstellung chemischer Strukturformeln Ergebnisse erreicht werden können, die den Regelungen entsprechen, die von der Redaktion Chemie festgelegt wurden wie sie unter Wie erstelle ich eine Strukturformel? festgehalten sind.

Das Einbringen eigener Erfahrungen in dieses Tutorial ist erwünscht, Fragen bitte auf der Diskussionsseite stellen.

Um innerhalb der Wikipedia ein einheitliches Aussehen der Strukturformeln zu erreichen, sollen folgende Werte als Leitlinie dienen, sie sind jedoch nicht zwingend. Die Parameter lassen sich in den Zeichenprogrammen an angegebener Stelle festlegen. Das nebenstehende Bild wurde mit diesen Einstellungen in ChemDraw erstellt.

Beispiel: Strukturformel mit den angegebenen Werten gezeichnet
Parameter Wert ChemDraw ISIS BKChem ChemDoodle
Bindungslänge 1,4 cm / 39,7 pt / 52,93 px „Fixed Length“ „Standard bond/grid length“ „Bond length“ „Bond length“
Liniendicke 0,06 cm / 1,7 pt / 2,26 px „Line Width“ „Line Style“ → „Thickness“ „Line width“ „Bond Line Thickness“
Liniendicke, breit 0,18 cm / 5,1 pt / 6,8 px „Bold Width“ „Stereo bond width“ „Wedge/Hatch width“ „Wedge Thickness“
Abstand Mehrfachbdg 15 % d. Bdg-Länge / 0,21 cm / 5,96 pt / 7,95 px „Bond Spacing“ „Double/triple bond“ „Bond width“ „Unsaturated Spacing“
Rand um Atome 0,08 cm / 2,3 pt / 3,1 px „Margin width“ „Atom label margin“
Strichabstand gestr.
Linien/Keile
0,15 cm / 4,3 pt / 5,7 px „Hash Spacing“ „Down bond hashes“ „Hash Spacing“
Schriftgröße Atome Arial: 24 pt „Atom labels“ → „Size“ „Font“ → „Size“ „Font Size“ „Main Font“
„Double-bond length ratio“ 0,8–0,85 nur BKChem

Als Schriftart sollte Arial oder eine vergleichbare serifenlose Schriftart gewählt werden. Es empfiehlt sich ein Rand von etwa 5 px oder etwa 2,5 % der Breite/Höhe.


Mit dem Stand 2021 ist BKChem aus den Repositorien beispielsweise von Debian entfernt worden, da es auf Python 2 basiert. BKChem wird also beim Upgrade auf Debian stable entfernt. Man kann dieses Programm jedoch aus den Paketen von Debian 10 (Buster) zum Laufen bringen. Dazu werden die Pakete bkchem, python-pil und python-pmw von Buster manuell heruntergeladen und mit dpkg -i <paketname> installiert. Die fehlenden Abhängigkeiten werden dann mit apt-get -f install aufgelöst. Der Export als SVG Cairo funktioniert nicht mehr und es muss mit den anderen unten aufgeführten Lösungen die SVG-Datei Wikipedia-konform gemacht werden.

  • BKChem ist Open Source und damit kostenlos
  • Funktionsumfang reicht fast an das kommerzielle ChemDraw heran
  • Intuitive Bedienung
  • Deutschsprachige Menuführung möglich
  • läuft bei manchen Formeln und völlig unreproduzierbar nicht stabil
  • die von BKChem direkt erzeugbaren SVG-Files sind für die Wikipedia unbrauchbar (Bug in der Wikimedia-Software) - daher müssen die Formeln jedes Mal nachbearbeitet werden (siehe Abschnitt Konvertieren) oder über ein Plugin exportiert werden.
  • Als ein Hobbyprojekt des Programmautors nur sehr selten Updates

Installation und Einstellungen

[Quelltext bearbeiten]
  • Installiere Python in der Version 2. (z.B. Version 2.7)
  • Download, Freeware, keine Registrierung nötig
  • Installation
  • Einstellungen
    • Unter "Options" - "Language" kann "Deutsch" ausgewählt werden
    • Unter "Einstellungen" - "Standardwerte" müssen nun in jedem Reiter die Werte angepasst werden, damit das Ergebnis Wikipedia:WEIS-konform ist.

Bei Windows XP und Windows 7 wird eventuell eine MSVCR71.DLL vermisst. Diese kann man hier herunterladen und mit Administratorrechten in folgenden Ordner kopieren:

  • Windows XP: C:\Windows\System32\
  • Windows 7 (64 bit Variante): C:\Windows\SysWOW64\

Einstellungen über Konfigurationsdateien

[Quelltext bearbeiten]

Man kann die Werte nach Wikipedia:WEIS einstellen, indem man zwei Konfigurationsdateien mit den hier angegebenen Werten/XML füllt (beispielsweise mittels Editor, Copy & Paste).

Linux: die Dateien kommen in das Verzeichnis .bkchem im Home-Verzeichnis des Benutzers (zugänglich auch über ~/.bkchem/)

Windows XP: abspeichern der Dateien im im Pfad C:\Dokumente und Einstellungen\<username>\Anwendungsdaten\bkchem und unter Windows 7 unter C:\Benutzer\<username>\AppData\Roaming\bkchem\

standard.cdml:

<?xml version="1.0" ?>
<cdml version="0.15" xmlns="http://www.freesoftware.fsf.org/bkchem/cdml">
  <info>
    <author_program version="0.12.2">BKchem</author_program>
  </info>
  <standard area_color="" font_family="helvetica" font_size="24" line_color="#000" line_width="0.06cm" paper_crop_margin="5" paper_crop_svg="1" paper_orientation="portrait" paper_type="Legal">
    <bond double-ratio="0.85" length="1.4cm" wedge-width="0.18cm" width="0.21cm"/>
    <arrow length="1.6cm"/>
  </standard>
</cdml>

prefs.xml:

<?xml version="1.0" ?>
<bkchem-prefs>
  <lang type="StringType">de</lang>
  <geometry type="StringType">1016x522+4+27</geometry>
  <recent-file1 type="StringType"></recent-file1>
  <recent-file2 type="StringType"></recent-file2>
  <use_real_minus type="IntType">0</use_real_minus>
  <default-dir type="StringType">~</default-dir>
</bkchem-prefs>

Zeichnen und speichern

[Quelltext bearbeiten]
  • Struktur zeichnen
  • Speichern als .svg (Dieses File ist ohne weitere Bearbeitung für Wikipedia unbrauchbar!)

Konvertieren

[Quelltext bearbeiten]

Mysid's script

[Quelltext bearbeiten]

Ein simples Script macht die SVG-Dateien nachträglich mit librsvg kompatibel, ohne dass Texte in Pfade umgewandelt werden müssen. Die nötigen Anpassungen sind ein Schriftwechsel und Konvertierung der Tieferstellungen (z.B. in CH2), so dass sie vom Wikimedia-Renderer verstanden werden.

Das Skript ist unter en:Wikipedia:WikiProject Chemistry/Structure drawing workgroup/Mysid's script zu finden. Zum Ausführen benötigt man Perl, das auf dem Rechner installiert sein muss. Auf allen Linux-Rechnern sollte Perl bereits vorhanden sein. Für Windows-Nutzer würde ich gerne ein Webformular anbieten, das es erlaubt das Skript auf einem anderen Rechner zu nutzen).

Bei dieser Methode bleibt das SVG für BKChem erkennbar und kann weiterbearbeitet werden. (Vor dem Hochladen der editierten Formel muss das Skript natürlich erneut über die Datei geschickt werden)

Cairo Export

[Quelltext bearbeiten]

Seit Version 0.10 bietet bkchem den Export nach SVG via Cairo an (Datei→Export→SVG via Cairo). Cairo wandelt dabei den Text in Pfade um und damit werden die Renderer-Probleme umgangen.

BKChem kann die so gespeicherten SVGs nicht mehr lesen! Also lokal immer auch die Originalversion für spätere Änderungen speichern.

Mit Inkscape Objekt in Pfad umwandeln
  • Mit Inkscape (Download, Freie Software) öffnen
    • alles markieren (Ctrl + A)
    • Pfad/Objekt in Pfad umwandeln
    • unter neuem Namen abspeichern (so bleibt die erste Datei noch für BKChem verfügbar, denn BKChem kann mit Inkscape bearbeitete SVGs nicht mehr lesen!)
  • weitere Hinweise zum Konvertieren und Nachbearbeiten mit Inkscape
  • Fragen zu dieser Software-Lösung kann Codc beantworten.

ISIS / SYMYX / Accelrys Draw / BIOVIA Draw

[Quelltext bearbeiten]

Installation und Einstellungen

[Quelltext bearbeiten]
  • Download, frei für nicht-kommerzielle Zwecke, Registrierung erforderlich
  • Installation
  • Wikipedia:WEIS-konforme Einstellungen vornehmen
  • Seitenformat muss auf A3, A2 oder größer eingestellt werden, weil sich recht großformatige Formeln ergeben (hier hilft ein pdf-Druckertreiber wie z. B. PDFCreator).

Zeichnen und speichern

[Quelltext bearbeiten]
  • Zeichnen
  • Als PDF speichern, bzw. mit PDF Creator drucken

Konvertieren

[Quelltext bearbeiten]
  • Fragen zu dieser Software-Lösung kann Steffen 962 beantworten.
Screenshot

Installation und Einstellungen

[Quelltext bearbeiten]
  • Software unter diesem Link downloaden (kostenpflichtig, für Institutionen und Bildungseinrichtungen mit Lizenz ggf. kostenlos)
  • Installation durch den Assistenten folgen
  • Maße und Schriftart wie im Abschnitt Allgemeines einstellen. (spezifische .cds-Datei bei untenstehenden Benutzern erhältlich, notfalls ACS Document 1996 verwenden)

Zur SVG-Konvertierung benötigt:

  • Scribus herunterladen und installieren (aktuell stabilste Version ist Scribus 1.6.1Download)
  • Ghostscript ebenfalls herunterladen und installieren (benötigt für Konvertierung von .eps-Dateien zu .svg-Dateien mit Scribus) (→ Download)

Zeichnen und speichern

[Quelltext bearbeiten]
ChemACX-Strukturfinder
Apply Document Settings from
  • Zeichnen der Strukturformel bzw. des Reaktionsschemas gemäß Wikipedia:WEIS (ggf. auch mit Rechtsklick auf freie Fläche → Convert Name to Structure möglich)
  • Optional: Speichern des Dokuments als .cdx-Datei für spätere Bearbeitungen (FileSave As → unter Dateityp ChemDraw (*.cdx) auswählen → Speichern)
  • Speichern des Dokuments als .eps-Datei (Encapsulated PostScript) (FileSave As → unter Dateityp Encapsulated PostScript (*.eps) auswählen → Speichern)

Konvertieren

[Quelltext bearbeiten]
  • Öffnen der .eps-Datei in Scribus (DateiÖffnen.eps-Datei auswählenOK)
Anmerkung: Nun sollte die Seitengröße genau auf die Größe der Strukturformel zugeschnitten sein.
  • Exportieren des Dokuments als .svg-Datei (DateiExportierenAls SVG speichern...OK)
Anmerkung: Dateiname nochmals anpassen und den automatisch generierten Anhang „-Seite001“ entfernen!)
  • Schließlich kann die Datei noch optional mit Inkscape nachbearbeitet und ggf. die Ränder etwas breiter gemacht werden.

Die Vektorgrafik (.svg-Datei) kann nun auf Wikimedia Commons hochgeladen werden. Dabei ist darauf zu achten, dass keine Quelltextfehler vorhanden sind. Die SVG-Datei kann mit diversen Online-Tools auf Fehler überprüft werden (→ W3C Markup Validation Service) und mit Hilfe des Commons SVG Checker als Vorschau angezeigt werden, um etwaige Darstellungsfehler noch vor dem Upload zu erkennen.

  • Fragen zu dieser Software-Lösung können , Chem Sim 2001 (eigene Vorlage auf Anfrage erhältlich) und Leyo beantworten.

Installation und Einstellungen

[Quelltext bearbeiten]

GChemPaint ist ein Teil der GNOME Chemistry Utils jedoch selbst kein offizieller Bestandteil des GNOME-Desktops. Es verwendet als Maßeinheit generell Pixel und rechnet individuell Bindungslängen von Pikometer in Pixel um. Der Skalierungsfaktor ist so geeicht, dass er bei 154 pm Bindungslänge den oben in der Tabelle angegeben Werten in Pixel entspricht. Auch hier kann wieder folgende fertige Konfiguration als Text im Home-Ordner abgespeichert werden:

~/.gchempaint/themes/WP-WEIS.xml:

<?xml version="1.0"?>
<chemistry>
  <theme name="WP:WEIS" bond-length="154" bond-angle="120" bond-dist="7.94" bond-width="2.27" arrow-length="200" arrow-head-a="6" arrow-head-b="8" arrow-head-c="4" arrow-dist="5" arrow-width="1" arrow-padding="16" hash-width="1.2" hash-dist="5.73" stereo-bond-width="6.8" zoom-factor="2.96" padding="0" stoichiometry-padding="1" object-padding="16" sign-padding="8" charge-sign-size="24" font-family="Arial" font-style="normal" font-weight="normal" font-variant="normal" font-stretch="normal" font-size="24576" text-font-family="Arial" text-font-style="normal" text-font-weight="normal" text-font-variant="normal" text-font-stretch="normal" text-font-size="24576" />
</chemistry>
Beispiel der SVG-Ausgabe mit XML-Daten auf der Bildbeschreibungsseite

Ab Version 0.12 ist dies nicht mehr nötig, da die Formatierungshilfe Bestandteil der offiziellen Distribution ist. Unter Datei - Eigenschaften - Thema kann Wikipedia ausgewählt werden.

Zeichnen und speichern

[Quelltext bearbeiten]

Das Programm bietet ab Version 0.10 einen Knopf mit dem markierte Moleküle als PNG abgespeichert werden und zusätzlich noch Metadaten in Form des InChI angehängt werden. Zu deren Verwendung besteht zumindest in der deutschen Wikipedia kein Konsens. Ab Version 0.12 werden durch Cairo gerenderte SVG-Dateien unterstützt. Diese sind ohne Umwege mit librsvg kompatibel. GChemPaint speichert seine Daten intern im XML-Format ab. Damit die Dateien von anderen Benutzern mit GChemPaint weiterbearbeitet werden können, bietet es sich diese auf die Bildschreibungsseite zu kopieren (siehe Datei:Bakelit Struktur.svg). Mit {{Created with GChemPaint}} lässt sich bei Wikimedia Commons ein Hinweis setzen, dass die Datei mit GChemPaint gezeichnet wurde.

  • Fragen zu dieser Software-Lösung kann Matthias beantworten.

chem | groff

[Quelltext bearbeiten]
Reserpin mit groff produziert

Eine nichtzeichnerische Erstellung von Formelzeichnungen basierend auf einem zu erstellenden, die Struktur beschreibenden, speziellen Quelltext bietet das groff-System, das auf Linux &Co verfügbar ist.
Beispiel: Mit

chem   /usr/share/doc/groff-base/examples/chem/reserpine.chem  | groff -p  > reserpine.ps  

wird eine Postscriptdatei aus einer mitgelieferter Beispieldatei generiert. Umwandlung in SVG kann z.B. so

ps2pdf  reserpine.ps ; pdf2svg reserpine.pdf reserpine.svg 

erfolgen. Das resultierende SVG muss dann idR noch beschnitten werden und bietet stylistisch zwar kein gutes aber oft passables Ergebnis.

en:ACD/ChemSketch

Installation

[Quelltext bearbeiten]
  • Download Freeware, seit 2011 nicht mehr aktualisiert
  • Installation

Zeichnen und speichern

[Quelltext bearbeiten]
  • Zeichnen
  • Speichern, als sk2-Datei für spätere Änderungen und für die Weiterverarbeitung zu svg als PDF-Datei
  • andere Datenformate sind u.a. tif, gif, jpg, png, molfiles (v2000 und v3000), bmp, aber kein svg.

Konvertieren

[Quelltext bearbeiten]

GlycanBuilder2 (Für SNFG-Grafiken)

[Quelltext bearbeiten]

GlycanBuilder2 wird wie im Github-Link beschrieben installiert. Dies ist unter allen gängigen Betriebssystemen möglich. Der Quelltext ist frei verfügbar. Für das Erstellen der Grafiken können die Voreinstellungen benutzt werden. Eine spezielle Konfiguration ist nicht nötig. Die Zeichnung wird einfach als .svg exportiert durch Klicken auf FileExport to graphical formats. Die so erzeugten .svgs müssen nachbearbeitet werden, weil sie einen weißen Hintergrund haben. Dazu kann man so ähnlich wie im nächsten Abschnitt mit Inkscape beschrieben die Elemente degruppieren und den Hintergrund entfernen, denn es handelt sich um ein weiß ausgefülltes Rechteck. Danach kann man wieder alle restlichen Elemente gruppieren und erneut als svg speichern.

Konvertieren und Nachbearbeiten mit Inkscape

[Quelltext bearbeiten]
  • Mit Inkscape (Download, Freie Software, Version 1.4, 2024) können Zeichnungen im PDF-Format aus anderen Programmen in das SVG-Format konvertiert oder SVG-Dateien nachbearbeitet werden.
    • PDF öffnen. Importeinstellungen: Import mit Cairo (die Datei wird direkt im Bearbeitungsmodus geöffnet)
    • Den weißen Rahmen per Mausklick (am besten in der Nähe des Rands) auswählen und löschen (ENTF)
    • alles markieren (STRG+A) und gruppieren (STRG+G)
    • Mit F4 ein Rechteck erstellen, dieses auswählen und die Größe so ändern, dass es 5–10 px höher und breiter als die gruppierte Zeichnung ist. Falls das Rechteck als schwarzer Kasten erstellt wird, kann man ihn mit der Toolbox „Füllung und Kontur“ auf transparent ändern, indem man den Parameter A bie der Füllung von 100 auf 10 ändert.
    • Mit STRG+A beide Elemente auswählen und vertikal und horizontal zentrieren (Falls das entsprechende Tool auf der rechten Seite nicht eingeblendet ist, mit UMSCHALT+STRG+A öffnen). Ausrichten: Relativ zu Zuerst oder Zuletzt gewählt
    • Bearbeiten/Seitengröße auf Auswahlgröße (UMSCHALT+STRG+R)
    • Das Hintergrund-Recheck markieren und löschen.
    • Datei/Speichern unter (UMSCHALT+STRG+S), Dateityp: Normales SVG, nicht im Inkscape-SVG-Format abspeichern
  • Inkscape ist gut geeignet, unabhängig von anderen Programmen auch komplexere Strukturen und Reaktionsgleichungen zu erstellen. Dabei kann beispielsweise diese Vorlage, die die gängigsten Strukturelemente von organischen Verbindungen enthält, verwendet werden.
  • Fragen zu dieser Software-Lösung kann NadirSH beantworten.

Quelltext formatieren

[Quelltext bearbeiten]

Hat man einen unstrukturierten SVG-Quelltext vorliegen ohne Einrückungen, etc, bzw. der Quelltext hat keine Zeilenumbrüche, ist also in einer Zeile geschrieben und damit nur noch schwer manuell editierbar, dann kann mit svgpp (SVG Pretty Printer, oft schon vorhanden direkt unter Linux), der Quelltext wieder formatiert werden.

Upload nach Commons

[Quelltext bearbeiten]

Vor dem Upload kann das SVG hier getestet werden.

Idealerweise ist der Quelltext des SVG W3C-konform, das lässt sich mit dem W3C-Validator testen. Hat man validen SVG-Code generiert, kann man diesen optional noch mit dem Tool SVG-Cleaner bereinigen, die Dateigröße schmilzt dabei meist auf einen Bruchteil zusammen und wird gut menschenlesbar. Stellt sich der Code dann als valide heraus, empfiehlt es sich noch

|Other fields={{Igen|O|v|+}}

in die Dateibeschreibung mit aufzunehmen. Die hochgeladene Datei wird dann automatisch in die Kategorie Valide SVG-Datei, erstellt mit BKChem/ChemDraw/anderen einsortiert, was die Wartung später sehr erleichtert. Der erste Parameter steht für das Strukturformelzeichenprogramm (O=other, B=BKChem, C=ChemDraw) und der zweite Parameter für Validität. Der dritte Parameter, +, ist nur für die Positionierung innerhalb von |Other fields= von Bedeutung. Ein Beispiel wie man es machen kann ist Datei:Ir(mppy)3.svg. Die vollständige Dokumentation der Vorlage findet sich unter Template:Igen auf Wikimedia Commons.

Der Upload des SVG-Files kann manuell erfolgen oder unter Zuhilfenahme eines der folgenden Tools: