PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : LOF subfig mit tocloft abstand zur Nummerierung



sharpType
07-09-2009, 02:05
Hallo Profis,

ich habe nen blödes Problem. Eigentlich zwei...

Zum ersten: ich benutzte subfig und tocloft und bekomme ich abbildungsVZ sowas (s. anhang). wie kann ich denn den abstand zur nummerierung in der LOF für die subfigures ändern?:confused:

im toc etc. kann man ja wunderbar mit:

\setlength{\cftsecindent}{.85cm}
\setlength{\cftsubsecindent}{2cm}
\setlength{\cftsubsubsecindent}{2.5cm}

formatieren.

zweites problem: der hyperlink von den subfigures aus dem LOF landet im nirgendwo. man muss immer auf die hauptabbildung klicken. ich benutzte natürlich noch hyperref und das lade ich nach subfig und tocloft. gibt es da eine spontane idee dazu? habe schon gegoogelt, das scheint wohl öfters aufzutauchen aber irgendwie hab ich keine richtige lösung dafür gefunden. minimalbeispiel?

vielen dank euch! ...

sommerfee
07-09-2009, 05:11
zweites problem: der hyperlink von den subfigures aus dem LOF landet im nirgendwo. man muss immer auf die hauptabbildung klicken. ich benutzte natürlich noch hyperref und das lade ich nach subfig und tocloft.

Die Kombination subfig und hyperref ist ein ständiges Ärgernis, selbst beim Übersetzen der subfig-Paketdokumentation gibt es passende hyperref-Warnungen und nicht-funktionierende Hyperlinks.

Das ist der wesentliche Grund, weswegen ich mein subcaption-Paket geschrieben habe, welches diese Probleme nicht haben sollte.

Liebe Grüße,
Axel

sharpType
07-09-2009, 09:15
okay...du hast das geschrieben? :eek: dann kannst du mir vielleicht helfen, denn das subcaption paket habe ich auch testweise verwendet und finde es eigentlich auch besser. aber in meinem thread (getrennte verzeichnisse minibsp nur abändern) ist ganz zum schluss ein minibsp mit getrennten verzeichnissen und dem subcaption paket. da gibt es einen fehler (vermutlich weil subcaption den zähler lofdepth nicht berücksichtigt?)

vielleicht kannst du mir ja dabei helfen das minibsp aus dem thread zum laufen zu bringen, das würde für mich eine lösung darstellen.

vielen vielen dank

sommerfee
07-09-2009, 18:08
Stimmt, caption bzw. subcaption unterstützt lofdepth nicht, da es hierfür ja die "list="-Option hat. Ich sollte vielleicht mal einbauen, daß ich auch diesen Zähler unterstütze, wenn er definiert ist, oder man umschalten kann, was es berücksichtigen soll oder... Schauen wir mal.

Ich schaue mir das ganze mal an und melde mich dann wieder. Jetzt muß ich leider weg, ob ich heute noch Zeit dafür finde, weiß ich nicht, aber spätestens morgen Nachmittag/Abend sollte das klappen.

Liebe Grüße,
Axel

sharpType
07-09-2009, 18:44
hmmm wäre ja super cool, aber mach dir da mal kein Stress. Meine bisherige Alternative ist:

die subfigures in dem lof verzeichnis auf ebene 1 mit aufzunehmen und zwar mit der hauptcaption der abbildung und dann eben darin mit \subref. ist ne notlösung, aber immerhin funktioniert sie.....

danke dir

sommerfee
09-09-2009, 19:58
Folgenden, zugegebenermaßen nicht sehr schönen, Patch kann ich anbieten:



\documentclass{article}
\usepackage{caption}

% Patch, muß NACH caption und VOR subcaption eingebunden werden
% Er bewirkt, daß zusätzlich der Zähler lofdepth bzw. lotdepth beachtet wird
\makeatletter
\def\@@DeclareCaptionSubType#1[#2]#3{%
\@ifundefined{c@#3}%
{\caption@Error{No float type '#3' defined}}%
{\@ifundefined{c@sub#3}%
{\caption@Debug{New subtype `sub#3'}%
\newcounter{sub#3}%
\@namedef{ext@sub#3}{\csname ext@#3\endcsname}%
\@@@DeclareCaptionSubType{#3}{@dotted\csname ext@#3\endcsname line}%
\@cons\caption@subtypelist{{#3}}}%
{\caption@Debug{Modify caption `sub#3'}}%
\@namedef{sub#3name}{}%
\@namedef{sub#3autorefname}{\csname #3name\endcsname}%
#1% is \@firstoftwo in star form, and \@secondoftwo otherwise
{\@namedef{p@sub#3}{}%
\@namedef{thesub#3}{\csname the#3\endcsname.\@nameuse{#2}{sub#3}}}%
{\@namedef{p@sub#3}{\csname the#3\endcsname}%
\@namedef{thesub#3}{\@nameuse{#2}{sub#3}}}%
\@namedef{theHsub#3}{\csname theH#3\endcsname.\arabic{sub#3}}%
}}
\def\@@@DeclareCaptionSubType#1#2{%
\@namedef{l@sub#1}{\@nameuse{#2}{2}{3.8em}{3.2em}} %
\@ifundefined{#2}%
{\@namedef{#2}##1{%
\ifnum ##1>\@nameuse{c@\csname ext@#1\endcsname depth}%
\let\caption@next\@gobblefour
\else
\def\caption@next{\@dottedtocline{##1}}%
\fi\caption@next}}%
{}}
\makeatother

\usepackage[list=true]{subcaption}

\newcounter{lofdepth}
\setcounter{lofdepth}{1}

\begin{document}

\listoffigures

\begin{figure}
\subfloat[1]{1111111111111111111}
\subfloat[2]{2222222222222222222}
\caption{Test}
\end{figure}

\end{document}


Ich muß gestehen, den Überblick verloren zu haben, in welche Version des Beispiels ich den nun einbauen muß, deswegen das eigene kleine Minimalbeispiel, in der Hoffnung, daß es auch im "realen" Dokument funktioniert. Wenn nicht, bitte Laut geben.

Liebe Grüße,
Axel

P.S.: Ich werde die Funktionalität auch in das nächste caption-Paket einbauen.

sharpType
09-09-2009, 21:22
ich werds mal ausprobieren....auf jeden fall VIELEN VIELEN DANK!:)