Hallo, ich weis das der Autor des Paketes chemnum hier regelmäßig mitliest und wollte so meine Frage zu dem Paket stellen, weil vllt auch noch andere vor dem gleichen Problem stehen. Die Situation: Ich schreibe ein längeres Protokoll mit mehreren Grafiken in denen chemische Strukturen dargestellt sind. Durch chemnum ist es ja nun möglich die Verbindungen in den Grafiken automatisch zu nummerieren. Alle Verbindungen haben einen TMP-Marker mit fortlaufender Nummer. Zu jedem Marker setze ich vor der Grafik einen replacecmpd{TMP...} Befehl. Die Verbindungen werden auch nummeriert. Das Problem: Ich hatte eine Struktur vergessen und wollte diese nachträglich einfügen. Die Marker der anderen Verbindungen hatten die Nummern: TMP15,16...23. Die neue Struktur sollte zw. TMP18 und TMP19 eingefügt werden. Ich gab der neuen Verbindung den Marker TMP24 (weil fortlaufend nummeriert). Also stand die TMP24 zw. der TMP18 und TMP19. Das Problem ist nun, dass die neue Struktur keine Nummer bekommt. Sie wird einfach übergangen. Wie kann man Strukturen die nachträglich eingefügt werden, fortlaufend nummerieren? Ich habe zwei Beispiele mitgebracht. Beispiel 1: test.tex und test.pdf Hier werden die Verbindungen nach einander durch nummeriert, wobei immer wieder Zahlen ausgelassen werden. So fehlt die 15 und die 20. Des weiteren benötige ich für die "Abbildung 3" in der 8 Verbindungen zu sehen sind 10 replacecmd Befehle Beispiel 2: test2.tex und test2.pdf Hier habe ich eine Abb. 2 aus Beispiel ans an den Anfang gesetzt und die anderen Beiden folgen lassen. Es werden die ersten vier Verbindungen nicht nummeriert und der Rest behält seine alten Nummern. Da ich hier keine Upload funktion finde hier die Codes: Beispiel 1 Open in writeLaTeX
\documentclass[a4paper, 11pt]{scrartcl} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[format=hang,labelfont=bf,font=small,margin=10pt]{caption} \usepackage{graphicx} %%Zum Laden von Grafiken \usepackage{chemnum} \usepackage[crop=off,runs=2]{auto-pst-pdf} \begin{document} \section{Überschrift} \begin{figure}[h] \centering \replacecmpd{TMP11}\replacecmpd{TMP12}\replacecmpd{TMP13}\replacecmpd{TMP14} \includegraphics[width=0.50\textwidth]{SyntheseRuIII} \caption{bild2} \label{fig:SyntheseRuIII} \end{figure} \begin{figure}[h] \centering \replacecmpd{bla}\replacecmpd{bla2}\replacecmpd{bla3}\replacecmpd{bla4}\replacecmpd{bla5}\replacecmpd{bla6}\replacecmpd{bla7}\replacecmpd{bla8}\replacecmpd{bla9}\replacecmpd{bla10} \includegraphics[width=0.50\textwidth]{SyntheseRu} \caption{bild1} \label{fig:SyntheseRu} \end{figure} \begin{figure}[h] \centering \replacecmpd{TMP16}\replacecmpd{TMP17}\replacecmpd{TMP18}\replacecmpd{TMP19}\replacecmpd{TMP21}\replacecmpd{TMP22}\replacecmpd{TMP23}\replacecmpd{TMP24}\replacecmpd{TMP25}\replacecmpd{TMP26} \includegraphics[width=0.50\textwidth]{Binole} \caption{bild3} \label{fig:Binole} \end{figure} \end{document} Beispiel 2 Open in writeLaTeX
\documentclass[a4paper, 11pt]{scrartcl} \usepackage[ngerman]{babel} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[format=hang,labelfont=bf,font=small,margin=10pt]{caption} \usepackage{graphicx} %%Zum Laden von Grafiken \usepackage{chemnum} \usepackage[crop=off,runs=2]{auto-pst-pdf} \begin{document} \section{Überschrift} \replacecmpd{TMP11}\replacecmpd{TMP12}\replacecmpd{TMP13}\replacecmpd{TMP14} \begin{figure}[h] \centering \includegraphics[width=0.50\textwidth]{SyntheseRuIII} \caption{bild2} \label{fig:SyntheseRuIII} \end{figure} \replacecmpd{bla}\replacecmpd{bla2}\replacecmpd{bla3}\replacecmpd{bla4}\replacecmpd{bla5}\replacecmpd{bla6}\replacecmpd{bla7}\replacecmpd{bla8}\replacecmpd{bla9}\replacecmpd{bla10} \begin{figure}[h] \centering \includegraphics[width=0.50\textwidth]{SyntheseRu} \caption{bild1} \label{fig:SyntheseRu} \end{figure} \replacecmpd{TMP16}\replacecmpd{TMP17}\replacecmpd{TMP18}\replacecmpd{TMP19}\replacecmpd{TMP21}\replacecmpd{TMP22}\replacecmpd{TMP23}\replacecmpd{TMP24}\replacecmpd{TMP25}\replacecmpd{TMP26} \begin{figure}[h] \centering \includegraphics[width=0.50\textwidth]{Binole} \caption{bild3} \label{fig:Binole} \end{figure} \end{document} Die Bilder braucht ihr natürlich auch noch: http://www.file-upload.net/download-9336336/Binole.eps.html http://www.file-upload.net/download-9336337/SyntheseRu.eps.html http://www.file-upload.net/download-9336338/SyntheseRuIII.eps.html |
Ich glaube, Du hast nicht völlig verstanden, wie Der Gedanke dahinter ist der folgende: für jedes EPS-Bild setzt Du im Bild Textmarker Open in writeLaTeX
\begin{scheme}% oder `figure` oder `center` oder... \replacecmpd{label-das-eindeutig-fuer-die-verbindung-bla-ist}% ersetzt `TMP1' \replacecmpd{label-das-eindeutig-fuer-die-verbindung-blub-ist}% ersetzt `TMP2' \includegraphics{foo-bar.eps} \end{scheme} Wichtig dabei ist, dass alle Wenn man Wenn Du die Zählung im EPS nicht bei 1 beginnst, sondern wie bei Open in writeLaTeX
\replacecmpd[tag=TMP11]{foo-bar-baz} Man könnte auch den internen Count vorher auf 10 setzen, Open in writeLaTeX
\ExplSyntaxOn \int_set:Nn \l__chemnum_compound_replace_int {10} \ExplSyntaxOff aber das ist ein Hack, den ich nicht empfehlen würde. Der Doppelunterstrich bei Die folgenden Beispiele zeigen, dass bei richtiger Verwendung alle Marker ersetzt werden: Open in writeLaTeX
\begin{center} \includegraphics[width=.45\textwidth]{SyntheseRuIII} \replacecmpd[tag=TMP11]{eins} \replacecmpd[tag=TMP12]{zwei} \replacecmpd[tag=TMP13]{drei} \replacecmpd[tag=TMP14]{vier} \includegraphics[width=.45\textwidth]{SyntheseRuIII} \end{center} Open in writeLaTeX
\begin{center} \includegraphics[height=.4\textheight]{SyntheseRu} \replacecmpd{bla} \replacecmpd{bla2} \replacecmpd{bla3} \replacecmpd{bla4} \replacecmpd{bla5} \replacecmpd{bla6} \replacecmpd{bla7} \replacecmpd{bla8} \replacecmpd{bla9} \replacecmpd{bla10} \includegraphics[height=.4\textheight]{SyntheseRu} \end{center} Open in writeLaTeX
\begin{center} \includegraphics[width=.45\textwidth]{Binole} \replacecmpd[tag=TMP16]{eins} \replacecmpd[tag=TMP17]{zwei} \replacecmpd[tag=TMP18]{drei} \replacecmpd[tag=TMP19]{vier} \replacecmpd[tag=TMP21]{fuenf} \replacecmpd[tag=TMP22]{sechs} \replacecmpd[tag=TMP23]{sieben} \replacecmpd[tag=TMP24]{acht} % \replacecmpd[tag=TMP25]{neun} % \replacecmpd[tag=TMP26]{zehn} \includegraphics[width=.45\textwidth]{Binole} \end{center} Nachtrag Ich habe soeben (2014/08/08) v1.1 auf CTAN hochgeladen. Damit kannst Du das ganze dann bequemer handhaben, da die neue Option Open in writeLaTeX
% arara: pdflatex: { shell: on } \documentclass[a4paper, 11pt]{scrartcl} \usepackage{graphicx} \usepackage{chemnum}[2014/08/08] \usepackage[crop=off,runs=2]{auto-pst-pdf} \begin{document} \begin{center} \setchemnum{replace-tag-nr=11} \replacecmpd{eins}% TMP11 \replacecmpd{zwei}% TMP12 \replacecmpd{drei}% TMP13 \replacecmpd{vier}% TMP14 \includegraphics[width=.45\textwidth]{SyntheseRuIII} \end{center} \begin{center} \replacecmpd{bla}% TMP1 \replacecmpd{bla2}% TMP2 \replacecmpd{bla3}% TMP3 \replacecmpd{bla4}% TMP4 \replacecmpd{bla5}% TMP5 \replacecmpd{bla6}% TMP6 \replacecmpd{bla7}% TMP7 \replacecmpd{bla8}% TMP8 \replacecmpd{bla9}% TMP9 \replacecmpd{bla10}% TMP10 \includegraphics[height=.4\textheight]{SyntheseRu} \end{center} \begin{center} \setchemnum{replace-tag-nr=16} \replacecmpd{fuenf}% TMP16 \replacecmpd{sechs}% TMP17 \replacecmpd{sieben}% TMP18 \replacecmpd{acht}% TMP19 \setchemnum{replace-tag-nr=21} \replacecmpd{neun}% TMP21 \replacecmpd{zehn}% TMP22 \replacecmpd{elf}% TMP23 \replacecmpd{zwoelf}% TMP24 \includegraphics[width=.45\textwidth]{Binole} \end{center} \end{document} beantwortet 07 Aug '14, 11:37 cgnieder Hi ich danke dir! Ich hoffe du kannst mir verzeihen, dass ich dein Paket so falsch gebraucht habe. Die Option [tag=TMPXX] setzen zu müssen um fortlaufend eine Nummerierung über alle EPS Dateien zu erhalten habe ich leider nicht gelesen. Mit dieser Option bekomme ich es nun so hin wie ich es möchte und es auch von dir angedacht wurde. Ich habe die replacecmd Befehle im Endeffekt so gesetzt wie es für mich funktioniert hat. Das das TMPXX in replacecmd{TMPXX} keinen Einfluss hat auf die eigentliche Nummerierung war mir klar. Ich finde es nur einfacher jeder Verbindung die Kombination TMP+Zahl zugeben als mir einen Names oder ähnliches auszudenken.
(07 Aug '14, 20:14)
Cornhulio
@Cornhulio Nicht nötig, Dich zu entschuldigen :) Ich kam beim Erstellen nie auf die Idee, dass man die Platzhalter im ganzen Dokument fortlaufend haben können wollte...
(08 Aug '14, 00:38)
cgnieder
@Cornhulio mit der neuen v1.1, die bald verfügbar sein wird, wirds leichter für Dich, siehe meine aktualisierte Antwort
(08 Aug '14, 17:23)
cgnieder
Hi ich hab das Update nicht gefunden auf CTAN?!? Was ich gefunden habe war/ist nur die "aqlte" Version 1.0b
(08 Aug '14, 21:18)
Cornhulio
@Cornhulio warte zwei Tage oder so :) Ich hab's erst hochgeladen, das CTAN-Team muss den Upload erst noch installieren. (Und dann dauert's auch noch in der Regel ein/zwei Tage, bis man die neue Version über den tlmgr in TeX Live installieren kann, bei MiKTeX vielleicht ein bisschen länger.)
(08 Aug '14, 21:25)
cgnieder
@Clemens alles klar, dann muss ich mich noch gedulden. Bei MiKTeX sind nur die Pakete ab dem 02. August verfügbar. Heißt noch gut 5 bis 6 Tage warten :_(
(08 Aug '14, 22:06)
Cornhulio
@Corhulio liegt daran, dass MiKTeX von einer einzigen Person, Christian Schenk, aktuell gehalten und maintained wird. Dafür ist das ja schon recht flott :)
(08 Aug '14, 22:13)
cgnieder
Ergebnis 5 von 7
show 2 more comments
|
Willkommen auf der TeXwelt! Kannst Du denn gezielt nur
TMP24
ersetzen? Am besten teste das mal mitpsfrag
. (Der gesamte Marker-Ersetzungs-Mechanismus wird nämlich nicht vonchemnum
bereitgestellt, sondern vonpsfrag
.) Einfach mal testen: ladepsfrag
stattchemnum
in einem Testdokument und dann probiere mal\psfrag{TMP24}{xxxx}
statt\replacecmpd
vor\includegraphics
.Hi ich habe das gemacht wie beschrieben: Nur eine Verbindung mit dem Marker TMP24. Und der Marker wurde problemlos ersetzt.
Hmm, ok. Dann muss ich mir wohl eine Test-Datei erstellen und mal sehen, ob ich was herausfinde
Ich habe jetzt mal eine Test-Datei erstellt, in der die Reihenfolge der Marker durcheinander ist, und kann Dein Problem nicht reproduzieren. Alles funktioniert bei mir bestens
Mit anderen Worten: ein Minimalbeispiel wird benötigt.