Seite 1 von 1

Problem mit hvfloat und listoftables

Verfasst: Do 19. Nov 2020, 17:04
von tk79

Hallo zusammen,

ich habe ein Problem bei der Verwendung des Pakets hvfloat zur Darstellung einer seitwärts gedrehten Tabelle (sidewaystable schied aus, da Überschrift und gedrehte Tabelle auf einer Seite erscheinen müssen): Im Falle der mit hvfloat gedrehten Tabelle wird die Caption nicht in das Tabellenverzeichnis übernommen. Wie kann ich das erreichen?

Das nachfolgende Beispiel verdeutlicht das Problem:

Code: Alles auswählen

\documentclass[12pt,a4paper]{article}

\usepackage{setspace} 
\usepackage{hyperref}
\usepackage{caption}
\usepackage{subcaption}
\usepackage[backend = biber, style = apa]{biblatex}
\usepackage{booktabs}
\usepackage{hvfloat}
\usepackage{tabularx}
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} % linksbündig mit Breitenangabe
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} % zentriert mit Breitenangabe
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}} % rechtsbündig mit Breitenangabe

\captionsetup{labelfont=bf,textfont=it,font=normalsize, justification=centering}
\hvFloatSet{capFormat={labelfont=bf,textfont=it,font=normalsize, justification=centering}}
\newcommand{\note}[1]{\smallskip\footnotesize #1}

\usepackage{lipsum}

\begin{document}

%Tabellenverzeichnis
\listoftables
\clearpage

\section{Tables}
\begin{center}
\hvFloat[nonFloat=true, capPos=top, rotAngle=90, objectPos=c]%
{table}%
{\begin{tabular*}{19.5cm}{L{6.5cm}L{5.5cm}L{7.5cm}}
    \toprule
    \toprule
    \textbf{Col A} & \textbf{Col B} & \textbf{Col C} \\
    \bottomrule
    A & 123 & 123 \\
    \bottomrule
    B & 123 & 123\\
    \bottomrule
   	C & 123 & 123\\
    \bottomrule
    \bottomrule
\multicolumn{3}{@{}p{19.5cm}@{}}{\footnotesize \lipsum[1]}\\
\end{tabular*}}
{\textit{Test-Tabelle 1}}
{tab:1}
\end{center}
\clearpage

\begin{table}[hb]
	{
		\centering
		\caption{Test-Tabelle 2}
		\label{tab:2}
		\begin{tabular}{lcc}
Year & Col1 & Col2\\
1999 & 1 & 2\\
2000 & 3 & 4\\
2001 & 5 & 6\\
		\end{tabular}
		\par}
\note{\lipsum[1]}
\end{table}
\clearpage

\begin{table}[hb]
	{
		\centering
		\caption{Test-Tabelle 3}
		\label{3}
		\begin{tabular}{lcc}
Year & Col1 & Col2\\
1999 & 1 & 2\\
2000 & 3 & 4\\
2001 & 5 & 6\\
		\end{tabular}
		\par}
\note{\lipsum[1]}
\end{table}

\end{document}

Danke!


Re: Problem mit hvfloat und listoftables

Verfasst: Do 19. Nov 2020, 17:21
von gast

Scheint nicht nur bei gedrehten Tabellen ein Problem zu sein. Solltest du melden. Als Workaround funktioniert, das optionale Argument für den Verzeichniseintrag anzugeben. Für das Zentrieren sollte außerdem objectPos=center verwendet werden:

Code: Alles auswählen

\documentclass[12pt,a4paper]{article}

\usepackage{setspace} 
\usepackage{caption}
\usepackage{subcaption}
\usepackage[backend = biber, style = apa]{biblatex}
\usepackage{booktabs}
\usepackage{hvfloat}
\usepackage{tabularx}
\usepackage{hyperref}
\newcolumntype{L}[1]{>{\raggedright\arraybackslash}p{#1}} % linksbündig mit Breitenangabe
\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} % zentriert mit Breitenangabe
\newcolumntype{R}[1]{>{\raggedleft\arraybackslash}p{#1}} % rechtsbündig mit Breitenangabe

%\captionsetup{labelfont=bf,textfont=it,font=normalsize, justification=centering}
\hvFloatSet{capFormat={labelfont=bf,textfont=it,font=normalsize, justification=centering}}
\newcommand{\note}[1]{\smallskip\footnotesize #1}

\usepackage{lipsum}

\begin{document}

%Tabellenverzeichnis
\listoftables
\clearpage

\section{Tables}
\hvFloat[nonFloat=true, capPos=top, rotAngle=90, objectPos=center]%
{table}%
{\begin{tabular*}{19.5cm}{L{6.5cm}L{5.5cm}L{7.5cm}}
    \toprule
    \toprule
    \textbf{Col A} & \textbf{Col B} & \textbf{Col C} \\
    \bottomrule
    A & 123 & 123 \\
    \bottomrule
    B & 123 & 123\\
    \bottomrule
   	C & 123 & 123\\
    \bottomrule
    \bottomrule
\multicolumn{3}{@{}p{19.5cm}@{}}{\footnotesize \lipsum[1]}\\
\end{tabular*}}
[Test-Tabelle 1]{Test-Tabelle 1}
{tab:1}

\clearpage

\begin{table}[hb]
	{
		\centering
		\caption{Test-Tabelle 2}
		\label{tab:2}
		\begin{tabular}{lcc}
Year & Col1 & Col2\\
1999 & 1 & 2\\
2000 & 3 & 4\\
2001 & 5 & 6\\
		\end{tabular}
		\par}
\note{\lipsum[1]}
\end{table}
\clearpage

\begin{table}[hb]
	{
		\centering
		\caption{Test-Tabelle 3}
		\label{3}
		\begin{tabular}{lcc}
Year & Col1 & Col2\\
1999 & 1 & 2\\
2000 & 3 & 4\\
2001 & 5 & 6\\
		\end{tabular}
		\par}
\note{\lipsum[1]}
\end{table}

\end{document}

Übrigens würde ich mir überlegen, entweder alle oder keine Tabelle mit hvfloat zu machen. Dann braucht man die Einstellungen nur einmal vorzunehmen.


Re: Problem mit hvfloat und listoftables

Verfasst: Do 19. Nov 2020, 19:41
von tk79

Danke!