Ich habe ein kleines Problem, bei dem ich mich sehr über einen Tip
freuen würde.
Ich versuche folgendes zu erreichen:
Eine mehrzeilige Tabellenbeschreibung unterhalb einer caption von
longtable, aber bevor die Tabelle beginnt, zu setzten, die tatsächlich
die _volle_ Breite der Zeile ausnutzt. Bei mir ist da nämlich immer
ein kleiner Abstand zu sehen, der Text beginnt erst auf der gleichen
Höhe, wie er in der Tabelle darunter startet. Die Linien ragen aber
etwas heraus. Es sieht ca. so aus:
Tabelle 1: abcdef
Text Text Text Text (<-- Hier volle Breite gewünscht)
Text Text Text Text
--------------------------------
123 345 678 usw..
123 345 678 usw..
123 345 678 usw..
Ich hoffe ich konnte mich verständlich machen. Ich hätte gerne, daß
der Text darüber bündig mit der horizontalen Linie abschließt. Der
longtable ist bei mir genau genommen ein ltxtable (und somit ein auf
volle Zeilenbreite gestreckter longtable). Das Problem liegt aber m. E.
im longtable begründet.
%%%meinetabelle.tex%%%
\begin{longtable}{Xrr}
\caption{abcdef} \\
Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
gesetzt und händisch auf Seitenbreite eingestellt, allerdings gelingt
es niemals das bündig an die Tabellenlinie zu bekommen
\hline
123 & 345 & 678 \\
123 & 345 & 678 \\
123 & 345 & 678 \\
\hline
\end{longtable}
%%%main.tex%%%
\LTXtable{\linewidth}{meinetabelle}
Wer mir eine Lösung sagt, dem schicke ich eine Flasche Rotwein!
Versprochen!!! Ein Rioja, spanischer Wein mundet ;)
PS: noch was: unter der tabular und tabularx Umgebung funktioniert das
problemlos, nur longtable will nicht so recht (or is it me??)
Gruß,
Stefan
Hmm, ich mag keinen Wein, daher gibt es von mir keine
Lösung ...
> PS: noch was: unter der tabular und tabularx Umgebung funktioniert das
> problemlos, nur longtable will nicht so recht (or is it me??)
... Aber einen Tipp habe ich noch:
Bastel mal ein Minimalbeispiel, nach der
Anleitung in http://www.minimalbeispiel.de/mini.html.
Mit einem Minimalbeispiel sind die Leute hier viel
hilfsbereiter (und können auch viel besser helfen),
und eventuell findest du auch beim Erstellen des
Beispiels die Lösung.
Grüße
Paul
--
Warum Realnamen: http://www.wschmidhuber.de/realname/
> Tabelle 1: abcdef
>
> Text Text Text Text (<-- Hier volle Breite gewünscht)
> Text Text Text Text
> --------------------------------
> 123 345 678 usw..
> 123 345 678 usw..
> 123 345 678 usw..
>
> Ich hoffe ich konnte mich verständlich machen. Ich hätte gerne, daß
> der Text darüber bündig mit der horizontalen Linie abschließt. Der
> longtable ist bei mir genau genommen ein ltxtable (und somit ein auf
> volle Zeilenbreite gestreckter longtable). Das Problem liegt aber m. E.
> im longtable begründet.
>
>
> %%%meinetabelle.tex%%%
> \begin{longtable}{Xrr}
> \caption{abcdef} \\
> Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
> gesetzt und händisch auf Seitenbreite eingestellt, allerdings gelingt
> es niemals das bündig an die Tabellenlinie zu bekommen
> \hline
1. Möglichkeit:
\caption{abcdef}\\
\multicolumn{3}{@{}p{\textwidth}@{}}{%
Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
gesetzt und h"andisch auf Seitenbreite eingestellt, allerdings gelingt
es niemals das b"undig an die Tabellenlinie zu bekommen}\\\hline
2. Möglichkeit:
\caption{abcdef}\\
\kern-\tabcolsep\rlap{\parbox{\textwidth}{%
Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
gesetzt und h"andisch auf Seitenbreite eingestellt, allerdings gelingt
es niemals das b"undig an die Tabellenlinie zu bekommen}}\\\hline
Herbert
> %%%meinetabelle.tex%%%
> \begin{longtable}{Xrr}
> \caption{abcdef} \\
> Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
> gesetzt und händisch auf Seitenbreite eingestellt, allerdings gelingt
> es niemals das bündig an die Tabellenlinie zu bekommen
> \hline
> 123 & 345 & 678 \\
> 123 & 345 & 678 \\
> 123 & 345 & 678 \\
> \hline
> \end{longtable}
Was hast Du denn bisher versucht? Das wäre sehr hilfreich zu wissen.
Evtl hilft Dir ja so etwas:
\begin{longtable}{Xrr}
\caption{abcdef} \\
\multicolumn{3}{@{}p{\linewidth}@{}}{Hier sollte nun der mehrzeilige
Text rein. Bisher immer mit multicolumn gesetzt und händisch auf
Seitenbreite eingestellt, allerdings gelingt es niemals das bündig
an die Tabellenlinie zu bekommen} \\
\hline
123 & 345 & 678 \\
123 & 345 & 678 \\
123 & 345 & 678 \\
\hline
\end{longtable}
Der wesentliche Punkt hier ist @{} vor und hinter der Spaltendefinition.
cheerio
ralf
dürfte eine falsche Breite liefern. \textwidth sollte es sein.
Herbert
Vielen, vielen DANK!!! genau das ist es. Für Euch sind das nur 3
Zeichen, für mich Stunden trial und error, die zuletzt ohne Erfolg
waren. Dafür habt Ihr Euch eine Flasche Wein verdient, eine Mail
müsstet Ihr von mir schon bekommen haben!!! Danke!!!!
Gruß,
Stefan
PS: Paul danke für den Link. Wie Du siehst bin ein Newbie, werde aber
versuchen meine zukünftigen Postings Ettikettenkonform zu posten!
> \multicolumn{3}{@{}p{\linewidth}@{}}{
>
> dürfte eine falsche Breite liefern. \textwidth sollte es sein.
Das kommt drauf an, was man erreichen möchte. Wobei \textwidth und
\linewidth sich doch eh nur bei zweispaltigem Satz unterscheiden, oder?
Und da habe ich es zumindst nicht geschafft eine \LTXtable rein zu
bringen.
Allerdings funktioniert weder der Ansatz mit \textwidth noch der mit
\linewidth so richtig, da in beiden Fällen
\LTXtable{0.7\linewidth}{meinetabelle}
Eine Tabelle mit \linewidth/\textwidth Breite liefert. Wenn \LTXtable
\linewidth auf sein erstes Argument setzen würde, so würde zumindest
\linewidth funktionieren. \textwidth sollte man wohl eher nicht
verändern.
cheerio
ralf
????
\linewidth außerhalb und innerhalb der Tabelle ist nicht dasselbe.
\textwidth sehr wohl.
Herbert
> \linewidth außerhalb und innerhalb der Tabelle ist nicht dasselbe.
> \textwidth sehr wohl.
???
Bei mir nicht. Ich sehe nur Unterschiede innerhalb der caption, nicht
aber inerhalb der restlichen Tabelle
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{filecontents*}{meinetabelle.tex}
\begin{longtable}{Xrr}
\caption{\the\linewidth\ \the\textwidth} \\
\multicolumn{3}{@{}p{\linewidth}@{}}{%
\the\linewidth\ \the\textwidth} \\
\hline
123 & 345 & 678 \\
\hline
\end{longtable}
\end{filecontents*}
\begin{filecontents*}{meinetabelle2.tex}
\begin{longtable}{Xrr}
\caption{\the\linewidth\ \the\textwidth} \\
\multicolumn{3}{@{}p{\textwidth}@{}}{%
\the\linewidth\ \the\textwidth} \\
\hline
123 & 345 & 678 \\
\hline
\end{longtable}
\end{filecontents*}
\documentclass{article}
\usepackage{ltxtable}
\begin{document}
\the\linewidth\ \the\textwidth\
\LTXtable{\linewidth}{meinetabelle}
\LTXtable{\linewidth}{meinetabelle2}
\LTXtable{0.7\linewidth}{meinetabelle}
\LTXtable{0.7\linewidth}{meinetabelle2}
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
cheerio
ralf
> vo...@perce.de writes:
>
> > \linewidth außerhalb und innerhalb der Tabelle ist nicht dasselbe.
> > \textwidth sehr wohl.
>
> ???
>
> Bei mir nicht. Ich sehe nur Unterschiede innerhalb der caption, nicht
> aber inerhalb der restlichen Tabelle
eben, davon rede ich doch, dass \linewidth die Breite der X-Spalte
ist und nicht die Breite der äußeren Textzeile.
Herbert
Hast Du mein Beispiel laufen lassen? Aus meiner sicht zeigt das ziemlich
eindeutig, dass ausserhalb der \caption \linewidth = \textwidth = 345pt
gilt. Innerhalb der \caption ist \linewidth = \LTcapwidth, aber das
spielt hier keine Rolle. Mein Beispiel zeigt auch, dass sich die beiden
Lösungen mit \textwidth und \linewidth im Resultat nicht unterscheiden.
Kannst Du ein Beispiel produzieren, wo sie es tun?
Dass \linewidth = \textwidth gilt, finde ich übrigens schade, da ich
bewusst \linewidth gewählt hatte, um zB mit
\LTXtable{0.7\linewidth}{meinetabelle}
eine schmale Tabelle zu erhalten. Das ist im Augenblick nicht der Fall,
lässt sich aber nachrüsten:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{filecontents*}{meinetabelle.tex}
\makeatletter
\setlength{\linewidth}{\TX@target}
\makeatother
\begin{longtable}{Xrr}
\caption{abcdef} \\
\multicolumn{3}{@{}p{\linewidth}@{}}{Hier sollte nun der mehrzeilige
Text rein. Bisher immer mit multicolumn gesetzt und händisch auf
Seitenbreite eingestellt, allerdings gelingt es niemals das bündig
an die Tabellenlinie zu bekommen} \\
\hline
123 & 345 & 678 \\
123 & 345 & 678 \\
123 & 345 & 678 \\
\hline
\end{longtable}
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass{article}
\usepackage[latin1]{inputenc}
\usepackage{ltxtable}
\begin{document}
\LTXtable{\linewidth}{meinetabelle}
\LTXtable{0.7\linewidth}{meinetabelle}
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
cheerio
ralf
Ralf Stubner wrote:
> vo...@perce.de writes:
>
>
>>Ralf Stubner schrieb:
>>
>>
>>>vo...@perce.de writes:
>>>
>>>
>>>>\linewidth außerhalb und innerhalb der Tabelle ist nicht dasselbe.
>>>>\textwidth sehr wohl.
>>>
>>>???
>>>
>>>Bei mir nicht. Ich sehe nur Unterschiede innerhalb der caption, nicht
>>>aber inerhalb der restlichen Tabelle
>>
>>eben, davon rede ich doch, dass \linewidth die Breite der X-Spalte
>>ist und nicht die Breite der äußeren Textzeile.
>
>
> Hast Du mein Beispiel laufen lassen? Aus meiner sicht zeigt das ziemlich
> eindeutig, dass ausserhalb der \caption \linewidth = \textwidth = 345pt
ok, wohl ein Missverständnis, denn ich hätte auf \rlap
verweisern sollen (mein 2. Vorschlag)
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{meinetabelle2.tex}
\begin{longtable}{Xrr}
\caption{abcdef}\\
\multicolumn{3}{@{}p{\textwidth}@{}}{%
Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
gesetzt und h"andisch auf Seitenbreite eingestellt, allerdings gelingt
es niemals das b"undig an die Tabellenlinie zu bekommen}\\\hline
\kern-\tabcolsep\rlap{\parbox{\linewidth}{%
Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
gesetzt und h"andisch auf Seitenbreite eingestellt, allerdings gelingt
es niemals das b"undig an die Tabellenlinie zu bekommen}}\\\hline
\kern-\tabcolsep\rlap{\parbox{\textwidth}{%
Hier sollte nun der mehrzeilige Text rein. Bisher immer mit multicolumn
gesetzt und h"andisch auf Seitenbreite eingestellt, allerdings gelingt
es niemals das b"undig an die Tabellenlinie zu bekommen}}\\\hline
123 & 345 & 678 \\\hline
\end{longtable}
\end{filecontents*}
\usepackage{ltxtable}
\begin{document}
\LTXtable{\linewidth}{meinetabelle2}
\end{document}
Herbert
--
http://PSTricks.de/
http://TeXnik.de/
http://www.dante.de/CTAN/info/math/voss/mathmode/Mathmode.pdf
http://www.dante.de/faq/de-tex-faq/
http://www.tex.ac.uk/cgi-bin/texfaq2html?introduction=yes
> ok, wohl ein Missverständnis, denn ich hätte auf \rlap
> verweisern sollen (mein 2. Vorschlag)
[...]
> \kern-\tabcolsep\rlap{\parbox{\linewidth}{%
In der Tat. Hier ist \linewidth != \textwidth. Wobei das anscheinend
nichts mit \rlap zu tun hat, sondern vielmehr vom \kern (bzw. dem
dadurch ausgelössten Verlassen des vertikalen Modus) kommt:
\documentclass{article}
\usepackage{tabularx}
\begin{document}
\noindent
\begin{tabularx}{\linewidth}{Xrr}
\the\linewidth \kern1cm \the\linewidth\\
\the\linewidth \leavevmode\the\linewidth\\
\the\linewidth & 345 & 678 \\\hline
\end{tabularx}
\end{document}
Man lernt nie aus ...
cheerio
ralf