Habs auch mal noch ausprobiert, weil ich das Makro eine gute Idee fand.
Dein MB hat bei mir einwandfrei funktioniert, auch mit allen Optionen. Habe nur statt betababel (das ich nicht habe) das normale babel verwendet, und die überflüssigerweise mehrfach geladenen hyperrefs auskommentiert:
Code:
\documentclass[12pt, oneside, onecolumn]{scrbook}
\usepackage[LATIN1]{inputenc} % Umlaute erkennen
\usepackage[T1]{fontenc} % Schriftart
\usepackage[ngerman]{babel}% NICHT BETABABEL
\usepackage{ifthen}
\usepackage{graphicx} % Grafikeinbindung
\graphicspath{{Bilder/}} % Ordner rel. zu Hauptdokument
\usepackage{caption}
\usepackage{nameref}
%\usepackage{hyperref}
\usepackage{color}
\definecolor{black}{gray}{0} % 10% gray
%\usepackage{hyperref}
\usepackage[colorlinks=true,linkcolor=black,citecolor=black]{hyperref}
\usepackage{mathptmx}
\usepackage[scaled=.92]{helvet}
\usepackage{courier}
\usepackage{geometry}
\newcommand{\bild}[4][\empty]{
\begin{figure}[htbp]
\centering
\ifthenelse{\equal{#1}{\empty}}
{\includegraphics{#2}}
{\includegraphics[width=#1]{#2}}
\caption{#3}
\label{#4}
\end{figure}
}
\begin{document}
\begin{figure}[htbp]
\centering
\includegraphics[width=10cm]{Testbild}
\caption{MeineBeschriftung}
\label{MeinLabel}
\end{figure}
Hier funktioniert die Referenzierung auf \ref{MeinLabel} schon.
\bild[10cm]{Testbild}{Beschriftung}{Label}
Hier funktioniert die Referenzierung auf \ref{Label} leider nicht.
\end{document}
Normalerweise würde ich noch empfehlen, hyperref ganz zum Schluss aller Packages zu laden. Aber wenn du abgeben musst und es so gerade läuft -> Never change a running system.
Lesezeichen