PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Referenzen



n3o-9119
27-10-2009, 09:27
Hallo ich würde gerne in meinen Text Referenzen von Abbildungen einbrigen. Wie das geht weiß ich. Das Problem ist, dass ich nur die Nummer der Abbildung erhalte und nicht (Abb. 2). Kann mir vielleicht jemand sagen welches Paket das verursacht? Ich bin mit meinem Latein am ende.


\documentclass[titlepage, 11pt,fleqn, a4paper]{article}
\usepackage{subfigure} %für Bilder nebeneinander anordnen
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[pdftex]{graphics}
\usepackage{graphicx}
\usepackage{mcs}% Seitenformat festlegen
\usepackage{Deckblatt}
%\usepackage{mcode}
%\usepackage{Polymernamen}
\usepackage{fancyhdr}
\usepackage{longtable}
\usepackage{siunitx} % Ermöglicht das richtige Darstellen von Einheiten
\usepackage[colorlinks=false]{hyperref} % setzt Linkboxen

%\usepackage{a4,da}
%\pagestyle{fancy} %*************************
\pagestyle{headings} %*************************
\newcommand{\VERSION}{\today}
\usepackage{pstricks} % lässt Farben zu
\hypersetup{linkbordercolor={1 1 1}} % setzt Linkboxen auf Farbe "`weiß"'
\usepackage[final]{pdfpages} %um im Anhang pdfs anzuhängen: \includepdf
\begin{document}
\include{layout}
.
.

Hier noch die Layout Datei die ich kürzen könnte :rolleyes:


%layout
%----------------------------------------------------------------------------------
\sloppy
%gibt LaTeX die Freiheit nicht so genau nach den Umbrüchen zu schauen
%\pagenumbering{arabic}
%Gibt an in welcher Darstellung die Seitennummerierung erfolgt
%{arabic}[1-n], {roman}[i-iv], {Roman}[I-IV], {alph}[a-z], {Alph}[A-Z]
%\setcounter{secnumdepth}{10}
%Setzt die erlaubte Kapitelstufentiefe auf den angegebenen Wert
%\setcounter{tocdepth}{10}
%Setzt die erlaubte Inhaltsverzeichnistiefe auf den angegebenen Wert
\pagestyle{fancy}
%ändert den Stil der Seite {plain}, {empty}, {headings}, {myheadings}
%{fancy} <- nur in verbindung mit \usepackage{fancyhdr}
%\thispagestyle{empty}
%bewirkt das gleich wie \pagestyle aber nur für die aktuelle Seite

%\setlength{\parskip}{0.5ex}
%Abstand zwischen den Absätzen auf {x.x ex} Zeilen setzen
%wegen Inhaltsverzeichnis


%Kopf- und Fussseite neu definieren
%------------------------------------------------------------------------
%\setlength{\headrulewidth}{1pt}
%\setlength{\footrulewidth}{0.4pt}
%Standardwerte

%\numberwithin{equation}{section} %Sorgt dafür das Formeln Kapitelweise numeriert werden
%\numberwithin{figure}{section} %Sorgt dafür das Bilder Kapitelweise numeriert werden
%\numberwithin{table}{section} %Sorgt dafür das Tabellen Kapitelweise numeriert werden

%Für die Einleitung
%------------------
%\newcommand{\dozent}{Prof. Dr. U. Langbein}
%\newcommand{\korreferent}{Dr. M. Kuhr}

\newcommand{\einkopfundfuss} {
\renewcommand{\headrulewidth}{1.2pt} %Linie in Kopfzeile
\renewcommand{\footrulewidth}{0.8pt} %Linie in Fußzeile
%renewcommand für headrulewidth deswegen weil das commando
%bereits existiert und nicht neu formuliert werden muss
\pagenumbering{Roman}
\lhead[]{} \chead[]{} \rhead[]{}
%\lhead[linker-kopf-gerade-seite]{linker-kopf-ungerade-seite}
%\rhead[rechter-kopf-gerade-seite]{rechter-kopf-ungerade-seite}
%\lfoot[linker-fuss-gerade-seite]{linker-fuss-ungerade-seite}
\lfoot[]{} \cfoot[]{} \rfoot[\thepage]{\thepage}
}
%\leftmark schreibt die aktuelle Überschrift
%\flushright rechtsbündig \flushleft linksbündig
%\thepage die aktuelle Seitenzahl


%Für die Kapitel
%---------------
\newcommand{\kapkopfundfuss} {
\renewcommand{\headrulewidth}{0.8pt} %Linie in Kopfzeile
\renewcommand{\footrulewidth}{0.4pt} %Linie in Fußzeile
%renewcommand für headrulewidth deswegen weil das commando
%bereits existiert und nicht neu formuliert werden muss
\pagenumbering{arabic}
\lhead[]{} \chead[]{} \rhead[]{\textit{\leftmark}}
%\lhead[linker-kopf-gerade-seite]{linker-kopf-ungerade-seite}
%\rhead[rechter-kopf-gerade-seite]{rechter-kopf-ungerade-seite}
%\lfoot[linker-fuss-gerade-seite]{linker-fuss-ungerade-seite}
\lfoot[]{} \cfoot[]{} \rfoot[\thepage]{\thepage}
}


%Für eine andere Kopf und Fusszeile im Dokument
%-------------------------------------------------
%\newcommand{\meinemarke}{DANKSAGUNG}
%\newcommand{\arbeitstitel}{Diplomarbeit }
%\newcommand{\haupttitel}{Optimierung des PICVD--Beschichtungsprozesses zur Herstellung optischer Interferenzfiltersysteme }
%\newcommand{\Firma}{Schott~AG~HiCotec }
%\newcommand{\HMDSO}{Hexamethyldisiloxan }
%\newcommand{\ttetra}{Titantetrachlorid }
%newcommand{\Si}{$SiO_2$--Einzelschicht }
%\newcommand{\Ti}{$TiO_2$--Einzelschicht }

%Kopf- und Fussseiten Definitions-Ende
%------------------------------------------------------------------------
\renewcommand{\arraystretch}{1.15} %Für Tabellen
%\renewcommand{\baselinestretch}{1.00}\normalsize %Für Text
\renewcommand{\figurename}{\textbf{Abb.}} %Abbildungsname ändern
\renewcommand{\tablename}{\textbf{Tab.}} %Tabellenname ändern
\renewcommand{\abstractname}{Abstract} %Ändert den Namen des Abstracts von Zusammenfassung zu Abstract
%\newcommand{\grafik}{E:/Diplomarbeit/TeX/DiplomarbeitSS06/Bilder}
%Pfad für die Bilder Achtung \ wird zu /
%\newcommand{\hoehe}{10cm} %gemeinsame Höhe der Bilder

mechanicus
27-10-2009, 10:23
Hallo,

bitte nutze nicht die php-Umgebung (falsche Programmiersprache).

Deine Anweisung
\renewcommand{\tablename}{\textbf{Tab.}} dürfte nicht den entsprechenden Erfolg bringen, weil du babel verwendest. Hier müsste die Anweisung lauten:

\addto\captionsngerman{\renewcommand{\tablename}{\ textbf{Tab.}}}

Hier mal dein Code reduziert und mit dem was du möchtest:


\documentclass[ngerman]{article}
\usepackage{babel,blindtext}
\addto\captionsngerman{\renewcommand{\figurename}{ \textbf{Abb.}}}
\addto\captionsngerman{\renewcommand{\tablename}{\ textbf{Tab.}}}
\makeatletter
\renewcommand{\p@figure}{Abb.\ }
\renewcommand{\p@table}{Abb.\ }
\makeatletter
\parindent0pt
\begin{document}
\tableofcontents
\listoffigures
\listoftables
\section{foo}
\blindtext

\begin{table}[!ht]
\caption{Tabelle 1}\label{tab:eins}
\rule{3cm}{3cm}
\end{table}

\blindtext

\begin{table}[!ht]
\caption{Tabelle 2}\label{tab:zwei}
\rule{3cm}{3cm}
\end{table}

\blindtext

\begin{figure}[!ht]
\caption{Abbildung 1}\label{fig:eins}
\rule{3cm}{3cm}
\end{figure}

\blindtext

\begin{figure}[!ht]
\caption{Abbildung 2}\label{fig:zwei}
\rule{3cm}{3cm}
\end{figure}


\section{Verweis}
Verweis auf Tabelle: \ref{tab:eins}

Verweis auf Tabelle: \ref{tab:zwei}

Verweis auf Abbildung \ref{fig:eins}

Verweis auf Abbildung \ref{fig:eins}
\end{document}



Gruß
Marco

bobmalaria
27-10-2009, 10:25
hi,

gar kein paket ist schuld. \ref gibt nur den wert des zählers, also die zahl, zurück. das paket hyperref bietet den \autoref befehl der erkennt um welchen typ, abbildung oder tabelle (usw.) es sich handelt.

du kannst auch ganz einfach selbst was definieren


\newcommand{\fref}[1]{Abb.~\ref{#1}}

und dann im text mit

\wie in \fref{label} zu sehen ist....

n3o-9119
27-10-2009, 10:29
Hallo vielen Dank für die schnellen Antworten