PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellenproblem mit @{}, floatrow und dcolum



Yasser
13-04-2009, 22:15
Hallo!
Mal wieder ich: es gibt ein Problem mit Tabellen. Hier eine Art Minimalbeispiel:


\documentclass{article}
\usepackage{booktabs}
\usepackage{tabularx}
\usepackage{dcolumn}
\usepackage[footfont=small]{floatrow}
\usepackage[labelsep=endash]{caption}

\newfloatcommand{mytab}{table}[{\captop\captionsetup{font=small,footfont=small}}][\FBwidth]
\newfloatcommand{myfig}{figure}[\captionsetup{font=small}][.8\textwidth]

\newcolumntype{L}[1]{>{\hspace{0pt}\RaggedRight}p{#1}}
\newcolumntype{C}[1]{>{\hspace{0pt}\Centering}p{#1}}
\newcolumntype{R}[1]{>{\hspace{0pt}\RaggedLeft}p{#1}}

\newcommand{\ml}[1]{\multicolumn{1}{l}{#1}}
\newcommand{\mc}[1]{\multicolumn{1}{c}{#1}}
\newcommand{\mr}[1]{\multicolumn{1}{r}{#1}}


\newcolumntype{d}[1]{D{,}{,}{#1}}

\newcommand{\mL}[2]{\multicolumn{1}{L{#1}}{#2}}
\newcommand{\mC}[2]{\multicolumn{1}{C{#1}}{#2}}
\newcommand{\mR}[2]{\multicolumn{1}{R{#1}}{#2}}

\begin{document}
\begin{table}
\mytab
{
\caption[Bla]{Messdaten zur Bestimmung der Messdaten zur Bestimmung der Messdaten zur Bestimmung der Messdaten zur Bestimmung der Messdaten zur Bestimmung der Messdaten zur Bestimmung der}
\label{tabelle}
}
{
\begin{tabularx}{.8\textwidth}{@{}d{-2}d{-4}cd{-4}@{}}
\toprule
\mL{.18\textwidth}{Konzentra\-tion [µM]} & \mc{Absorption} &\mC{.2\textwidth}{Zustand des Ansatzes} & \mL{.15\textwidth}{Konzentration}\tabularnewline
\midrule
0,33 & 0,2736 & klar & 3,22 \tabularnewline
\bottomrule
\end{tabularx}
\floatfoot{Irgendein text um nicht viel zu zeigen, damit ich ach was und so weiter was kann schon passieren, Johann ist ein echter Graf.}
}
\end{table}
\end{document}

Das Problem: Ich hätte gerne den Textblock über den Tabellen genau so breit wie die Tabelle selbst. Außerdem ist leider die Wirkung von @{} aufgehoben durch multicolumn.

Ich lese während ich warte nochmal mein Tabellenbuch von Herbert ...

Dank im Voraus!
Gruß
Yasser

mechanicus
13-04-2009, 22:42
Hallo,



Außerdem ist leider die Wirkung von @{} aufgehoben durch multicolumn.
Ich lese während ich warte nochmal mein Tabellenbuch von Herbert ...

Direkt das erste Beispiel auf Seite 8.

Gruß
Marco

Yasser
13-04-2009, 23:42
Das löst Problem 1, vielen Dank! Jetzt wäre es noch nett, wenn die Tabelle so breit wäre wie der caption-text.
Dieser Text steht in der Floatrow Dokumentation, hat möglicherweise damit zu tun:


If you use tabularx or tabular* environments inside \floatbox stuff (or
any other) with \hsize command inside width argument, you must repeat the
\hsize argument in width argument of \floatbox macro.
If you want to set width of tabularx or tabular* environments (or any other) like
.8\hsize (or 1.2\hsize) and these environments placed inside any \floatbox
macro, load .8\hsize in width argument of \floatbox macro, and in width
argument of tabularx or tabular* load only \hsize macro (see also sample file
frsample03.tex).
In other cases (especially in fancy layout or settings) be careful with usage of
\hsize as width option of \floatbox.

mechanicus
14-04-2009, 00:52
Hallo,


lade mytab mit der Gößenangabe von \tabularx:

\mytab[0.8\textwidth]{%

Gruß
Marco

Yasser
14-04-2009, 01:51
Habe ich schon gemacht, klappt auch. Jedoch nicht so elegant gelöst! Ich wusste nicht, dass diese Option so einfach gesetzt werden kann.

Danke und Gruß! Jetzt kann ich beruhigt schlafen gehen!:-D
Yasser