
Ich bin neu bei Latex, würde es aber wirklich gerne zum Schreiben meiner Dissertation (natürlich Chemie) verwenden. Die Laborarbeit ist fast fertig, aber das scheint im Moment die niedrigere Hürde zu sein :D
Im Moment versuche ich, mit dem Chemnum-Paket schöne Beschriftungen für alle Verbindungen zu erhalten. Theoretisch sollte es die "TMP"-Markierungen (die in einer externen EPS-Datei enthalten sind, die von der Chemdraw-Software erstellt wird) durch automatische Nummerierungen ersetzen. Allerdings schaffe ich es nicht einmal, die Beispieldatei mit TeXstudio zum Laufen zu bringen:
In meinem Fall sind die Markierungen nicht ersetzt, sondern es steht unter allen sechs Beispielverbindungen der Text "TMP1" bzw. "TMP2". Auch die Schriftart in den Bildern ist gegenüber dem Modell-PDF von oben vermasselt.
Was mache ich falsch? Und wenn wir schon dabei sind: Wie erstelle ich meine eigenen TMP-Beschriftungen? Ist es in Ordnung, in Chemdraw einfach „TMP“ als Textblock zu schreiben?
Dank im Voraus!
Antwort1
Ich habe noch einen weiteren Hinweis: Es könnte mit den Kompilierungseinstellungen zu tun haben.
Wie bereits erwähnt, funktioniert die Kompilierung online mit dem Overleaf Texmaker. Overleaf verwendet die Latex-Kompilierung, aber wenn man auf pdflatex umstellt, können die TMP-Marker nicht neu platziert werden, die Abbildung sieht jedoch immer noch korrekt aus. Mein Setup kann das Bild bereits nicht darstellen (siehe Screenshot unten, beachten Sie, dass zufällige Teile fehlen/verschoben sind und die Schriftart geändert wurde).
Die Verwendung des Befehls „auto-pst-pdf“ erzeugt überhaupt kein Bild.
enter\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{graphicx}
\title{Automatically numbering compounds in chemical schemes}
%% Uncomment these lines if you get error about "too many \new..."
% \let\tmp\newinsert
% \let\newinsert\newbox
\usepackage{chemstyle}
% \let\newinsert\tmp
\usepackage{chemnum}
% For positioning the scheme captions at the top.
\floatsetup[scheme]{position=top}
\begin{document}
\begin{scheme}
%% hexa.eps has "TMP1" and "TMP2" as the markers
%% in fact EVERY .eps should start with TMP1, TMP2 etc
%% for ease of use \replacecmpd{first:compound}
%% automatically replace TMP1
\replacecmpd{DSV} %% automatically replace TMP2
\includegraphics[width=\linewidth]{Picture}
\caption{This is something!}
\label{first:chem:scheme}
\end{scheme}
Compounds \refcmpd{first:compound} and \refcmpd{DSV} in \ref{first:chem:scheme}. Here's a reference to in-text creation of \cmpd{RareCompound} that we can later refer to.
\vfill
\end{document}
Antwort2
Die von Ihnen beschriebenen Probleme treten häufig bei der Kombination pdfLatex / chemnum / Texstudio / ChemDraw auf. Die Nummerierung der Verbindungen ist in einer Chemiearbeit offensichtlich sehr wichtig.
Meine Antwort basiert auf den Antworten auf ähnliche Fragen, siehe:Nummerierung/ChemDraw/Mac,EPS/ChemDraw/chemnum,richtige Texstudio-Konfiguration,
Ich versuche im Folgenden die häufigsten Fehlerquellen aufzulisten:
Kompilierung: Sie müssen
pdflatex -synctex=1 -interaction=nonstopmode --shell-escape %.tex
in TexStudio verwendenTexstudio PATH: Legen Sie Ihren PATH je nach Betriebssystem etwa wie folgt fest
/usr/local/texlive/2019/bin/x86_64-darwin:/Library/TeX/texbin
(Sie müssen ihn je nach Betriebssystem anpassen).Auto-pst-pdf: Sie müssen
\usepackage[crop=off,runs=2]{auto-pst-pdf}
Ihre Präambel sehr früh laden.EPS: Es muss so gemacht werden, dass Textzeichenfolgen als solche klar definiert sind. ChemDraw unter Windows macht das gut (Standardparameter für den Export), aber ChemDraw auf einem Mac nicht. Das ist ein Fehler und einfrühere Fragehabe es mir angesehen. Da ich Ihr MWE kompilieren konnte, denke ich, dass alles in Ordnung ist.
Ich weiß nichts über den vorherigen Jobname-Kommentar, ich brauchte ihn nicht für TexStudio, aber vielleicht ist er für Overleaf notwendig?
Dieses Beispiel hat bei mir mit den oben beschriebenen Einstellungen und TexStudio v3 funktioniert:
\documentclass{article}
%\def\jobname{main} %<-- your file name
\usepackage[
runs=2,
crop=off
]{auto-pst-pdf}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{graphicx}
\title{Automatically numbering compounds in chemical schemes}
%% Uncomment these lines if you get error about "too many \new..."
% \let\tmp\newinsert
% \let\newinsert\newbox
\usepackage{chemstyle}
% \let\newinsert\tmp
\usepackage{chemnum}
% For positioning the scheme captions at the top.
%\floatsetup[scheme]{position=top}
\begin{document}
\begin{scheme}
%% hexa.eps has "TMP1" and "TMP2" as the markers
%% in fact EVERY .eps should start with TMP1, TMP2 etc
%% for ease of use
\replacecmpd{first:compound} %% automatically replace TMP1
\replacecmpd{second:compound} %% automatically replace TMP2
\includegraphics[width=\linewidth]{hexa}
\caption{This is something!}
\label{first:chem:scheme}
\end{scheme}
Compounds \refcmpd{first:compound} and \refcmpd{second:compound} in \ref{first:chem:scheme}. Here's a reference to in-text creation of \cmpd{RareCompound} that we can later refer to.
\vfill
\begin{scheme}
\replacecmpd{next:compound} %% automatically replace TMP1 BUT the autonumbering counter updates to 3!
\replacecmpd{last:compound} %% automatically replace TMP2
\includegraphics[width=\linewidth]{hexa}
\caption{This is something else!}
\label{second:chem:scheme}
\end{scheme}
Compounds \refcmpd{next:compound} and \refcmpd{last:compound} in \ref{second:chem:scheme}. Hey remember \cmpd{RareCompound}? \texttt{chemnum} still remembers it correctly, \emph{and} see how the compound numbering continues throughout the scheme diagrams!
\vfill
%% MANUAL UPDATING THE COMPOUND COUNTER; make sure you know what you're doing!
\setcounter{cmpdmain}{8}
\begin{scheme}
\replacecmpd{jumped:compound} %% automatically replace TMP1 BUT the autonumbering counter updates to 9!
\replacecmpd{nextjumped:compound} %% automatically replace TMP2
\includegraphics[width=\linewidth]{hexa}
\caption{This is again something else!}
\label{third:chem:scheme}
\end{scheme}
Compounds \refcmpd{jumped:compound} and \refcmpd{nextjumped:compound} in \ref{third:chem:scheme}. (Yes we manually modified the compound numbering counter after \ref{second:chem:scheme}).
\end{document}
Antwort3
Ich bin nicht dafür bekannt, Ihre Antwort zu kommentieren. Wenn Sie weiterhin pdflatex als Compiler verwenden möchten, würde ich vorschlagen, `\jobname´ umzubenennen, wie Ulrike Fischer es in ihrer Antwort getan hat.Hier.
Bei mir funktioniert es, wenn ich das von Ihnen zitierte Beispiel auf der Rückseite verwende und die Zeile zum Umbenennen \jobname
des Pakets hinzufüge.{auto-pst-pdf}
\documentclass{article}
\def\jobname{main} %<-- your file name
\usepackage[
%runs=2,
%crop=off
]{auto-pst-pdf}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{graphicx}
\title{Automatically numbering compounds in chemical schemes}
%% Uncomment these lines if you get error about "too many \new..."
% \let\tmp\newinsert
% \let\newinsert\newbox
\usepackage{chemstyle}
% \let\newinsert\tmp
\usepackage{chemnum}
% For positioning the scheme captions at the top.
%\floatsetup[scheme]{position=top}
\begin{document}
\begin{scheme}
%% hexa.eps has "TMP1" and "TMP2" as the markers
%% in fact EVERY .eps should start with TMP1, TMP2 etc
%% for ease of use
\replacecmpd{first:compound} %% automatically replace TMP1
\replacecmpd{second:compound} %% automatically replace TMP2
\includegraphics[width=\linewidth]{hexa}
\caption{This is something!}
\label{first:chem:scheme}
\end{scheme}
Compounds \refcmpd{first:compound} and \refcmpd{second:compound} in \ref{first:chem:scheme}. Here's a reference to in-text creation of \cmpd{RareCompound} that we can later refer to.
\vfill
\begin{scheme}
\replacecmpd{next:compound} %% automatically replace TMP1 BUT the autonumbering counter updates to 3!
\replacecmpd{last:compound} %% automatically replace TMP2
\includegraphics[width=\linewidth]{hexa}
\caption{This is something else!}
\label{second:chem:scheme}
\end{scheme}
Compounds \refcmpd{next:compound} and \refcmpd{last:compound} in \ref{second:chem:scheme}. Hey remember \cmpd{RareCompound}? \texttt{chemnum} still remembers it correctly, \emph{and} see how the compound numbering continues throughout the scheme diagrams!
\vfill
%% MANUAL UPDATING THE COMPOUND COUNTER; make sure you know what you're doing!
\setcounter{cmpdmain}{8}
\begin{scheme}
\replacecmpd{jumped:compound} %% automatically replace TMP1 BUT the autonumbering counter updates to 9!
\replacecmpd{nextjumped:compound} %% automatically replace TMP2
\includegraphics[width=\linewidth]{hexa}
\caption{This is again something else!}
\label{third:chem:scheme}
\end{scheme}
Compounds \refcmpd{jumped:compound} and \refcmpd{nextjumped:compound} in \ref{third:chem:scheme}. (Yes we manually modified the compound numbering counter after \ref{second:chem:scheme}).
\end{document}
Antwort4
Suchen Sie nach diesem Beitrag, wenn Sie Chemdraw unter MacOS verwenden: https://tex.stackexchange.com/a/687480/298255
Diese Lösung könnte auch für Windows-Benutzer hilfreich sein.