PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Römische Nummerierung chemischer Reaktionen



Jaan
08-01-2008, 17:30
Hallo,

ich studiere Chemie und arbeite zusammen mit einem Kommilitonen bereits seit einiger Zeit mit TeX, jetzt sind wir aber auf ein für uns scheinbar unlösbares Problem gestoßen.

In unseren Versuchsprotokollen laufen eine ganze Reihe von countern. Neben den unter TeX standatisierten für mathematische Gleichungen, Abbildungen, Tabellen, etc. kommen bei uns noch einer für chemische Verbindungen und einer für Reaktionsgleichungen drauf.

PROBLEM:
Um diese voneinander im laufenden Text optisch zu unterscheiden wollen wir, dass die Reaktionsgleichungen am Dokumentrand in römischen Zahlen durchnummeriert werden und – hier kommt das Problem – auch die zugehörigen Referenzlinks im laufenden Text als römische Zahlen dargestellt werden.

Wir verwenden folgenden Aufruf im header:


%Aufruf: \reac{Bilddatei}{label}
\newcounter{reac}
\newcommand{\reac}[2]
{\parbox{0.9\textwidth}
{\epsfig{file=chemstruc/#1.eps,width=0.88\textwidth}
\refstepcounter{reac}\label{#2}} \hfill (\Roman {reac})
}

Leider zeigt TeX über \ref{label} immer nur arabische Zahlen als Links zu den römisch nummerierten Reaktionsgleichungen.

Hat jemand nen guten Vorschlag??? Wären echt dankbar, denn wir grübeln schon seit längerer Zeit drüber.

sommerfee
08-01-2008, 17:55
(\Roman {reac})

Nimm hier \thereac anstatt \Roman{reac} und füge nach dem \newcounter{reac} eine Umdefinition von \thereac ein:


%Aufruf: \reac{Bilddatei}{label}
\newcounter{reac}
\renewcommand\thereac{\Roman{reac}} % default ist \arabic{reac}
\newcommand{\reac}[2]
{\parbox{0.9\textwidth}
{\epsfig{file=chemstruc/#1.eps,width=0.88\textwidth}%
\refstepcounter{reac}\label{#2}} \hfill (\thereac)
}


Hintergrund: Neben dem Zähler gibt es auch immer ein \thexxx Makro, welches die Umwandlung des Zählerinhaltes in eine druckbare Variante vornimmt. Dieses Makro wird auch intern von \refstepcounter verwendet, so daß \label+\ref hiervon abhängen.

Gruß,
Axel

Jaan
08-01-2008, 20:08
Läuft... Danke