PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Abbildungen referenzieren, die NICHT im Dokument auftauchen sollen



RedEdison
06-07-2010, 13:13
Hallo TeXniker,

folgendes "Problem": meine Frau schreibt eine geisteswissenschaftliche Doktorarbeit mit etwa 200 Abbildungen. Es ist üblich und geplant, dass sie alle Abbildungen in ein separates Dokument (Abbildungsband) packt. Der Abbildungsband wird später auch gar nicht mit TeX erstellt, sondern mit einer Spezial-Fotosoftware.
Nun möchten wir natürlich dennoch im Hauptdokument die Abbildungen referenzieren und dabei z.B. das feature der automatischen Nummerierung nutzen (es könnten noch Abbildungen hinzukommen bzw. wegfallen). Auch ein Abbildungsverzeichnis mittels \listoffigures wäre sehr nützlich.

Frage nun: wie können wir sozusagen "Phantom"-Abbildungen erstellen, die nicht im eigentlichen Dokument erscheinen, wohl aber ganz normal nummeriert und mit \listoffigures erfasst werden?

Mein erster Gedanke wäre ein separates, unsichtbares Unterkapitel, das nur die (Dummy-)Abbildungen enthält. Geht so etwas in TeX? Hat jemand vielleicht andere bzw. bessere Ideen?

Wir benutzen MiKTeX 2.8 i.V.m TeXnicCenter, KOMA-Klasse scrreprt. Kein Minimalbeispiel, da es ja erstmal ums Prinzip geht.

Danke für Eure Mühe und viele Grüße aus Aachen,
RedEdison

u_fischer
06-07-2010, 14:12
Natürlich geht sowas. Du kannst für die Erstellung des Verzeichnisses \addcontentsline oder \addtocontents benutzen. Und die Zähler kannst du per \refstepcounter hochsetzen. Die wesentliche Frage ist, wie/ob du Seitenzahlen im Verzeichnis haben willst: Mit \addtocontents kannst du sie manuel setzen.


\documentclass{article}

\begin{document}
\listoffigures

\refstepcounter{figure}\label{fig1}
\addtocontents{lof}{\protect\contentsline {figure}{\protect\numberline {\thefigure}Abbildung1}{A-5}}
\refstepcounter{figure}\label{fig2}
\addcontentsline{lof}{figure}{\protect\numberline{ \thefigure}Abbildung2}{}


\section{test}
\ref{fig1}, \ref{fig2}
\end{document}


Nachtrag: Wenn du hyperref benutzt, musst du den \contentsline-Befehl wahrscheinlich anpassen.

RedEdison
06-07-2010, 15:19
Hallo Frau Fischer,

das ist es! \refstepcounter ist mein Freund, damit ist der wichtigste Punkt geklärt. Ich habe jetzt ein "Phantom"-Abbildungskapitel eingefügt:

\listoffigures
\renewcommand{\thefigure}{\arabic{figure}} %damit die Nummerierung nicht auch die (römischen) Kapitelnummern enthält
\refstepcounter{figure}\label{nicolettodamodenaape lles}
\addcontentsline{lof}{figure}{\protect\numberline{ \thefigure}Nicoletto da Modena: Apelles}{}
\refstepcounter{figure}\label{geometria}
...

In der Tat benutze ich hyperref, und in der Tat spuckt er mir bei Verwendung der Zeile \addtocontents eine Fehlermeldung aus: "! Argument of \addvspace has an extra }". Wie ich gesehen habe, gibt es ja auch schon zahlreiche threads zu dem Thema, z.B. (mit Ihrer Beteiligung) http://newsgroups.derkeiler.com/Archive/De/de.comp.text.tex/2008-06/msg00815.html.

Mit \addcontentsline funktioniert alles hingegen tadellos.

Nun werde ich noch versuchen, die Anzeige der Seitenzahl im Abbildungsverzeichnis zu unterdrücken sowie den hyperref-Link für Abbildungen zu deaktivieren (ist ja beides unsinnig, da es die Abbildung im Dokument ja gar nicht gibt.)

Danke und Gruß,
RedEdison

u_fischer
06-07-2010, 15:33
Mit hyperref hat \contentsline einfach ein Argument mehr.


\documentclass{article}

\usepackage{hyperref}
\begin{document}
\makeatletter
\renewcommand\@dotsep{1000}%wenn die Punkte verschwinden sollen.
\makeatother
\listoffigures

\refstepcounter{figure}\label{fig1}
\addtocontents{lof}{\protect\contentsline {figure}{\protect\numberline {\thefigure}Abbildung1}{}{}}

\section{test}
\ref*{fig1}
\end{document}

RedEdison
06-07-2010, 15:59
Genial, das ist es. Damit habe ich genau, was ich wollte. Nach dem Unterdrücken der Punkte hätte ich als nächstes gesucht, danke für den vorauseilenden Tipp!

So sieht es also aus:


\makeatletter
\renewcommand{\thefigure}{\arabic{figure}} %damit die Nummerierung nicht auch die (römischen) Kapitelnummern enthält
\renewcommand\@dotsep{1000} %damit die Punkte zur Seitenzahl verschwinden.
\makeatother
\listoffigures
\refstepcounter{figure}\label{nicolettodamodenaape lles}
\addtocontents{lof}{\protect\contentsline {figure}{\protect\numberline {\thefigure}Nicoletto da Modena: Apelles}{}{}}
\refstepcounter{figure}\label{geometria}
...

Gruß,
RedEdison

lockstep
06-07-2010, 16:17
\renewcommand{\thefigure}{\arabic{figure}} %damit die Nummerierung nicht auch die (römischen) Kapitelnummern enthält



Auf diese Weise erhältst du mehrdeutige Abbildungsnummern, da der Zähler "figure" standardmäßig am Beginn jedes Kapitels zurückgesetzt wird. Nimm stattdessen



\usepackage{chngcntr}
\counterwithout{figure}{chapter}


lockstep

RedEdison
07-07-2010, 15:14
Hallo lockstep,

danke für den Hinweis - bei mir sind die "Phantom"-Abbildungen ja in einem einzigen Kapitel, daher ist mir das noch nicht aufgefallen.
Aber bei den Fußnoten habe ich soeben dasselbe Verhalten (Zurücksetzen des Zählers in jedem Kapitel) bemerkt. Ich bin mir nur noch nicht ganz sicher, ob ich das für einen bug oder ein feature halten soll. Falls es mir noch als bug aufstößt, weiß ich mich ja dann dank Deines Hinweises zu behelfen. :-)

Gruß,
RedEdison

lockstep
07-07-2010, 15:37
Kapitelweise Nummerierung von Abbildungen, Tabellen und Fußnoten ist definitiv ein Feature. Insbesondere bei Fußnoten kenne ich nur wenige Bücher mit durchgehender Nummerierung.

lockstep