Seite 1 von 2

Tabelle drehen und umbrechen (langer Fragebogen in Appendix)

Verfasst: Mi 16. Jun 2010, 21:15
von talueng
Ich muss einen Fragebogen in den Anhang meiner Diplomarbeit packen. Dieser Fragebogen ist aber
a) eher breit- als hochformatig, d.h. die Tabelle muss gedreht werden:
b) sehr lang, d.h. due Tabelle muss umbrochen werden.

Mein Lehrstuhl stellt zwar eigene LaTeX-Style bereit, in denen auch 90-Grad-gedrehte longtables drin sind, aber leider erscheinen die immer erst auf der nächsten Seite nach der Anhangsüberschrift, d.h. es folgt unter der Anhangsüberschrift erstmal viel weiße Fläche und erst auf der nächsten Seite fängt die Tabelle an. Außerdem würde ich gerne an einigen Stellen den Umbruch verbieten, da die Tabelle in Fragebogenabschnitte aufgeteilt ist, die wenn möglich zusammenstehen sollten.

Weiß jemand, wie ich das alles erreichen könnte?

Verfasst: Do 17. Jun 2010, 07:45
von KOMA
Soll die Überschrift mit gedreht werden? Dann würde ich mal probieren, die mit in den Bereich bis \endfirsthead zu packen.

Verfasst: Do 17. Jun 2010, 17:32
von talueng
Nee, Überschrift normal (Hochformat) dann darunter die gedrehte Tabelle (Querformat) über mehrere Seiten. Also so, wie ich es jetzt auch habe, aber ohne einer leeren Seite zwischen Überschrift und Beginn der Tabelle.

Verfasst: Fr 18. Jun 2010, 07:37
von KOMA
Eigentlich geht das nicht, weil die üblichen Pakete zum Drehen den gesamten Satzspiegel drehen und dazu eben beim Drehen erst einmal eine neue Seite beginnen. Ich muss mal ausprobieren, ob eine meiner Ideen zu der Frage trotzdem funktionieren (insbesondere im Zusammenspiel mit longtable, was das Problem nicht gerade vereinfacht). Leider hast Du kein Material zum Experimentieren geliefert. Es wird also ggf. etwas dauern, bis ich dazu komme, mir selbst etwas zu basteln.

Verfasst: Fr 18. Jun 2010, 09:55
von talueng
Hier ist ein Minimalbeispiel:
\begin{ltabelle}[turn]{Caption}{|>{\raggedright\arraybackslash}p{2.5cm}||>{\raggedright\arraybackslash}p{2.5cm}|>{\raggedright\arraybackslash}p{2.5cm}|>{\raggedright\arraybackslash}p{2.5cm}|>{\raggedright\arraybackslash}p{2.5cm}|>{\raggedright\arraybackslash}p{2.5cm}||>{\raggedright\arraybackslash}p{4.2cm}|}%
{}%
{}%
{}%
{}%
\hline
S1 & S2 & S3 & S4 & S5 & S6 & S7 \\   
\hline  
\end{ltabelle}
Und das ist die Definition von ltabelle aus der .sty-Datei meines Lehrstuhls:
\newenvironment{ltabelle}[7][]{% Parameter, Beschriftung, Spalten, erster Kopf, Koepfe, Fuesse, letzter Fuss
	\renewcommand{\wiwwubildertabellen@tabellecaptiontoc}{#2}
	\setkeys{tabelle}{#1}
	%\renewcommand{\wiwwubildertabellen@tabellecaption}{\def\@captype{table}\ContinuedFloat\captionof{table}[]{#2}}
	\renewcommand{\wiwwubildertabellen@tabellecaption}{\captionof{table}[]{#2}}
	\wiwwubildertabellen@tabelletextsize
	\wiwwubildertabellen@ltabellerotstart
	\begin{longtable}[\ltabellepos]{#3}
		#4\endfirsthead
		#5\endhead
		#6\endfoot
		#7\endlastfoot
}{%
	\end{longtable}
	\vspace*{-3ex}\normalsize
	\wiwwubildertabellen@ltabellequelleadd\wiwwubildertabellen@tabellequelle
	\wiwwubildertabellen@tabellecaption
	\wiwwubildertabellen@ltabellerotend%
	\wiwwubildertabellen@tabellereset%
}

Verfasst: Fr 18. Jun 2010, 11:16
von KOMA
Versuch mal nur aus den zwei Codeschnippseln ohne irgendwelche anderen Dateien von Deinem Dokument und ohne irgend welches anderes Wissen über Dein Dokument ein vollständiges Minimalbeispiel (← dies ist ein geprüfter Link mit relevanten Informationen!) zu bauen. Du wirst sehen, dass das schlicht unmöglich ist und damit die Codeschnippsel weitgehend wertlos sind.

Verfasst: Fr 18. Jun 2010, 11:41
von talueng
Die beiden Code-Schnipsel waren eher als Anfangslösung gedacht bzw. um zu zeigen, was ich schon habe bzw. was leider nicht funktioniert. Ich würde aber auch jeden anderen Code/Klasse/Paket verwenden und bin nicht auf das o.g. festgelegt; mir geht es um eine Lösung zum Problem "Überlange, querformatige Tabelle" generell, wie auch immer sie aussieht (in der Hoffnung, dass eine Lösung existiert - gerade für ein auf wissenschaftliche Publikationen ausgerichtetes Textsatzprogramm, das sich gerne besser als Microsoft sieht, existiert die Möglichkeit von überlangen, querformatigen Tabellen hoffentlich).

Verfasst: Fr 18. Jun 2010, 12:27
von KOMA
Folgendes scheint zu funktionieren:
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{longtable}
\usepackage{pdflscape}
\usepackage{eso-pic}
\begin{document}
\AddToShipoutPicture*{%
  \AtTextUpperLeft{\let\newpage\relax\chapter{TEST}}%
}
\begin{landscape}
  \begin{longtable}{p{10cm}}
    Was auch immer\\
    \hline
    \endfirsthead
    Was auch immer (Fortsetzung)\\
    \hline
    \endhead
    \blindtext\\
    \blindtext\\
    \blindtext\\
    \blindtext\\
    \blindtext\\
  \end{longtable}
\end{landscape}
\end{document}
Der Trick dabei ist, dass die Überschrift quasi als grafisches Hintergrundelement gesetzt wird. Das funktioniert für \chapter aber nur, wenn man abschaltet, dass \chapter eine neue Seite beginnt. Daher das \let\newpage\relax. Das ist auch sonst nicht ganz unkritisch zu sehen, weil dabei genau das passiert, was man eigentlich nicht machen soll: Die Kapitelüberschrift wird ein Gruppe gepackt. Damit gehen dann beispielsweise \label/\ref für dieses Kapitel in die Hose. Wenn die gebraucht werden, müsste man zusätzlich tricksen.

Verfasst: Di 22. Jun 2010, 16:34
von talueng
Danke für den Tipp. Leider kriege ich es nicht zum Laufen:

1) Wenn ich einfach nur \chapter\section gegen \AddToShipoutPicture*{\AtTextUpperLeft{\let\newpage\relax\chapter{TEST}}} austausche und davon abgesehen meine bisherige Tabelle benutze, kriege ich 2 Fehler "Package titlesec Error: Entered in horizontal mode." von LaTeX.

2) Wenn ich nicht nur \chapter\section austausche, sondern auch meine (Lehrstuhl-proprietäre) \ltabelle gegen \begin{landscape}\begin{longtable}{p{10cm}} usw. austausche, kriege ich 790 (!) Fehler, darunter die o.g. Fehlermeldung (wieder 2mal) sowie eine ganze Menge "Extra alignment tab has been changed to \cr." (an Stellen wo ich \textbf, \scriptsize, \cellcolor o.ä. verwende)

3) Wenn ich mal meine gesamte Tabelle im Anhang lösche und einfach nur Dein Minimalbeispiel einsetze:
\appendix
\AddToShipoutPicture*{%
  \AtTextUpperLeft{\let\newpage\relax\chapter{TEST}}%
}
\begin{landscape}
  \begin{longtable}{p{10cm}}
    Was auch immer\\
    \hline
    \endfirsthead
    Was auch immer (Fortsetzung)\\
    \hline
    \endhead
    \blindtext\\
    \blindtext\\
    \blindtext\\
    \blindtext\\
    \blindtext\\
  \end{longtable}
\end{landscape} 
...kriege ich eine Fehlermeldung "Package titlesec Error: Entered in horizontal mode."


Scheint irgendwie am diesem titlesec package zu liegen.

Verfasst: Di 22. Jun 2010, 20:34
von KOMA
Dann wirf eben das Paket titlesec raus ...
Hätte ich wissen müssen, dass Du das Paket verwendest? Ich glaube nicht.
Dass die Idee für die Verwendung mit dem nebulösen Institutspaket angepasst werden muss, war allerdings durchaus wahrscheinlich. Mehr als die Idee und ein lauffähiges Beispiel, auf dem Leute mit mehr Wissen über den tatsächlichen Einsatz aufbauen können, konnte ich unmöglich liefern. Das sollte aber nicht weiter überraschen.