PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellenkopf verdeckt Grafik in der Kopfzeile



trinix
18-04-2006, 17:43
Hallo,

ich habe eine Grafik in der Kopfzeile eingebunden, doch leider wird sie von der Tabelle, die sich auf der Seite befindet, verdeckt.
Ich verwende das Packet scrpage2 mit den Befehlen:
\thispagestyle{scrheadings}
\chead{\includegraphics{pics/pdf_header_2.jpg}}
Die Seitenränder sind mittels
\usepackage{geometry}
\geometry{left=1cm,right=1cm,top=3cm,bottom=1cm,bi ndingoffset=0cm}
definiert.

Wie kann ich erreichen das die Tabelle unterhalb der Grafik beginnt?

trinix

P.S.: Sorry für das Fehlen eines MB es wäre etwas aufwändig, aber vielleicht hat jemand so eine Idee.

rais
20-04-2006, 15:42
Moin moin,
bleibt das Problem bestehen, wenn Du "includehead" als weitere Option an das geometry-Paket übergibst? (vgl. Figure 2 der geometry-Doku)
Bzw. wenn Du das Bild in der Höhe beschneidest, also z.B.
\includegraphics[height=3ex]{pdf_header_2}
(oder beides machst?)

imho ist der Unterstrich in LaTeX-Quelltexten mit Vorsicht zu genießen, da dieser ja eigentlich einen Befehl darstellt - wenn idR auch nur im Mathemodus.
MfG,

trinix
20-04-2006, 16:00
bleibt das Problem bestehen, wenn Du "includehead" als weitere Option an das geometry-Paket übergibst?
Das Problem bleibt bestehen und die ganze Tabelle inclusive der verdeckten Grafik rutschen ein Stück nach unten.

Bzw. wenn Du das Bild in der Höhe beschneidest, also z.B.
\includegraphics[height=3ex]{pdf_header_2}
Wenn ich das tue wird das Bild sehr klein und rutscht (vertikal) über die Tabelle. Ich habe es mit height=1cm versucht, was das Bild leicht größer werden lässt, jedoch mit zunehmender Größe rutscht es wieder hinter die Tabelle

(oder beides machst?)
Gleiches Verhalten wie oben, nur eben ein Stück weiter unten.

imho ist der Unterstrich in LaTeX-Quelltexten mit Vorsicht zu genießen
Geändert. Hat aber leider keinen Effekt.

trinix

P.S.: Anbei ein paar Screenshots zum besseren Verständnis.

rais
20-04-2006, 16:25
Hallo nochmal,

Das Problem bleibt bestehen und die ganze Tabelle inclusive der verdeckten Grafik rutschen ein Stück nach unten.

Hmm, kannst Du testweise mal Text vor die Grafik stellen, damit man sieht, wie die Grafik am Text orientiert ausgerichtet wird?
Ich glaube kaum, daß die Tabelle auch über diesen Text ragt, oder?
Ggf. läßt sich ja mit \raisebox die Grafik weiter nach oben schieben.

Wie hoch ist eigentlich Deine Tabelle? Die kann man sonst ja vielleicht auch noch n Stück nach unten rücken ;)


Geändert. Hat aber leider keinen Effekt.

Schon klar. Es soll aber Pakete geben, die diesen Unterstrich auch im Textmodus als Befehl zur Verfügung stellen - in dem Fall gäb's hier vermutlich einen Fehler (OK, nu nicht mehr)... und wenn man Fehler von vorneherein ausschließen kann, umso besser :)
MfG,

trinix
20-04-2006, 16:33
Hmm, kannst Du testweise mal Text vor die Grafik stellen, damit man sieht, wie die Grafik am Text orientiert ausgerichtet wird?
Ich glaube kaum, daß die Tabelle auch über diesen Text ragt, oder?
\thispagestyle{scrheadings}
\chead{platzhalter}{\includegraphics{pics/pdfheader2.jpg}}
Wenn ich den Text "platzhalter" so einsetze, dann wird die Grafik nach unten verschoben und die Tabelle auf dei nächste Seite.

Wie hoch ist eigentlich Deine Tabelle? Die kann man sonst ja vielleicht auch noch n Stück nach unten rücken ;)
Wie schiebe ich die Tabelle auf der Seite etwas nach unten?

trinix

rais
20-04-2006, 16:43
\thispagestyle{scrheadings}
\chead{platzhalter}{\includegraphics{pics/pdfheader2.jpg}}
Wenn ich den Text "platzhalter" so einsetze, dann wird die Grafik nach unten verschoben und die Tabelle auf dei nächste Seite.

ich dachte da eher an so etwas


\chead{platzhalter \includegraphics{..}}

...hätt' ich natürlich gleich posten können :o


Wie schiebe ich die Tabelle auf der Seite etwas nach unten?

Vielleicht ein
\vspace{3ex}
vor \begin{tabular}... ?
MfG,

trinix
20-04-2006, 16:56
ich dachte da eher an so etwas


\chead{platzhalter \includegraphics{..}}

Auch hier rutscht die Tabelle über den Text. Wie in Anhang "platzhalter" zu sehen (neben der 32 unter Wo.)
[/QUOTE]
Vielleicht ein
\vspace{3ex}
vor \begin{tabular}... ?
MfG,[/QUOTE]
Das hat leider keinen Effekt. Die Tabelle zuckt kein Stück.

trinix

bischi
20-04-2006, 17:07
Gibts da nicht noch so einen Befehl für die Kopfhöhe (headheigth oder so hiess er)?

MfG Bischi

rais
20-04-2006, 17:19
Hallo,
das ist alles sehr sonderbar...
Bisher hat sich eine überlange Tabelle -so es denn eine solche ist - eigentlich eher über die Fußzeile geschrieben - wie bindest Du die Tabelle denn nun genau ein?
Bekommst Du eigentlich Fehlermeldungen (bzw. Warnungen à la overfull vbox) ?

Und wenn Du bei dem geometry-Paket "top" verkleinerst, z.B. auf 1cm ?
MfG,

trinix
20-04-2006, 19:08
Ich merke schon, es geht nicht ohne.



\documentclass[9pt,a4paper]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage{geometry}
\geometry{left=1cm,right=1cm,top=1cm,bottom=1cm,bi ndingoffset=0cm}
\usepackage{scrpage2}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{colortbl}
\newcolumntype{T}{|>{\color{white}\columncolor{green}}c|}


\begin{document}

\thispagestyle{scrheadings}
\chead{platzhalter \includegraphics{pdfheader2.jpg}}
\cfoot{}

\centering
\begin{tabular}{| c | p{8cm} | p{7cm} | c |}
\hline
\multicolumn{4} {T} { \rule{0pt}{1.3em} \bf{Zeitplan - Teilstudium in Paisley}} \\
\hline \hline
\bf{Wo.}\footnotemark & \multicolumn{1}{c|}{\bf{Beschreibung}} & \bf{Anmerkungen} & \bf{A} \\
\hline\hline
\end{tabular}\\
\footnotetext{Wochen bis zum Semesterstart an der University of Pasiley}



\end{document}


trinix

rais
20-04-2006, 19:37
Aha,
dann schau Dir nochmal Deinen output (LOG) an, da sollte es eine "Overfull \vbox" Meldung geben - die schauste Dir an, damit Du weißt, um wieviel Dein Bild höher als \headheight ist - Danke bischi :)
Oder Du setzt \includegraphics[height=\headheight]{das-bild} und schaust, um wieviel es Dir nun zu klein ist...
Dann kannst Du z.B. entweder mit
\setlength{\headheight}{8ex}
oder mit
\vspace*{3ex}\begin{tabular}...
entweder dem Bild mehr Platz einräumen oder die Tabelle einfach nach unten drücken. Alternativ geht dann auch
\vspace*{0pt}\vfill\begin{tabular}...
Und sieh mal, wie weit die Tabelle nu von Deinem Bild weg ist ;)
MfG,

trinix
20-04-2006, 20:24
Super gut, vielen Dank.
So hats geklappt:
\chead {\includegraphics{pics/pdfheader2}}
\setlength{\headheight}{65pt}

Noch drei kurze Fragen:
Am Ende der Tabularumgebung siehts so aus


\end{tabular}\\
\footnotetext{BlaBlaBlaBlaBla}
\captionbelow{Dies ist nur eine Beispieltabelle}

Für die caption bekomme ich die Fehlermeldung "! LaTeX Error: \caption outside float." Wie kann ich das beheben?

Des Weiteren gebe vor der Tabularumgebung ein \centering ein, um die Tabelle zu zentrieren. Wie schalte ich auf folgenden Seiten wieder auf den Pagestyle von scrreprt um?

Der Text wird sehr knapp am Ende der Tabelle herangesetzt. Wie kann ich hier erreichen das ein normaler Zwischenraum entsteht?

trinix

rais
20-04-2006, 20:37
Super gut, vielen Dank.
So hats geklappt:
\chead {\includegraphics{pics/pdfheader2}}
\setlength{\headheight}{65pt}

Noch drei kurze Fragen:
Am Ende der Tabularumgebung siehts so aus


\end{tabular}\\
\footnotetext{BlaBlaBlaBlaBla}
\captionbelow{Dies ist nur eine Beispieltabelle}

Für die caption bekomme ich die Fehlermeldung "! LaTeX Error: \caption outside float." Wie kann ich das beheben?

lade das caption-Paket und nutze \captionof{table}{...}


Des Weiteren gebe vor der Tabularumgebung ein \centering ein, um die Tabelle zu zentrieren. Wie schalte ich auf folgenden Seiten wieder auf den Pagestyle von scrreprt um?

Der Text wird sehr knapp am Ende der Tabelle herangesetzt. Wie kann ich hier erreichen das ein normaler Zwischenraum entsteht?

trinix
Du könntest es mal mit der center-Umgebung versuchen, also statt \centering dann \begin{center} .. \end{center}
Hmm, das müßte eigentlich auch nach oben mehr Platz zum Bild lassen.
Aber was ist ein "normaler Zwischenraum" ?


und ich bin mir ziemlich sicher, Du meintest \textbf{..} und nicht \bf{..} in Deinem Beispiel.

MfG,

trinix
20-04-2006, 21:09
lade das caption-Paket und nutze \captionof{table}{...}
Im KOMA-Script-Guide (ab S.110) steht jedoch, dass man \captionbelow verwenden kann. Jedoch wird hier dieses caption in einer \table-Umgebung verwandt.
Ich glaub nun bin ich ein wenig verwirrt.
Im KOMA-Guide steht das so:


\begin{table}
\captionabove{Dies ist nur eine Beispieltabelle}
\begin{tabular}{llll}
Dies & ist & ein & Beispiel.\\\hline
Bitte & lassen & Sie & den \\
Inhalt & dieser & Tabelle & unbeachtet.
\end{tabular}
\end{table}

Wann brauch ich denn nun eigentlich die \table-Umgebung um eine \tabular-Umgebung herum. Bei mir ging es ja auch ohne \table und wenn ich das jetzt Testmässig verwende, dann zerschiesst es mir die Tabelle - sprich sie landet auf der nächsten Seite.



Du könntest es mal mit der center-Umgebung versuchen, also statt \centering dann \begin{center} .. \end{center}
Das ist richtig. Jedoch habe ich gelesen, dass eine \centering bei Tabellen vorzuziehen ist wegen dem Entstehen eines vertikalen Abstandes.

trinix

rais
20-04-2006, 21:39
Wann brauch ich denn nun eigentlich die \table-Umgebung um eine \tabular-Umgebung herum. Bei mir ging es ja auch ohne \table und wenn ich das jetzt Testmässig verwende, dann zerschiesst es mir die Tabelle - sprich sie landet auf der nächsten Seite.

Generell sind Tabellen wie Figuren in ihre entsprechende Gleitumgebung zu setzen, wenn man sie hinterher auch bezeichnen (caption) oder gar referenzieren (label & ref) will.
Schau mal in Deiner LaTeX-Doku nach Gleitumgebung (oder kurz "floats").

Soll eine Tabelle (mit ner Grafik klappt das natürlich auch) an einer bestimmten Stelle im Text erscheinen, dann läßt man sie am Einfachsten gar nicht erst gleiten (so wie Du das in Deinem Beispiel ja schon gemacht hast)...
Wenn diese Tabelle dann doch bezeichnet werden soll (also immer noch fest am Platz), dann eben mit besagtem \captionof-Befehl aus dem caption-Paket, damit kann man auch nichtgleitende Tabellen (oder Bilder) entsprechend beschriften.


Das ist richtig. Jedoch habe ich gelesen, dass eine \centering bei Tabellen vorzuziehen ist wegen dem Entstehen eines vertikalen Abstandes.

Stimmt schon - aber Dir ging es doch gerade um zusätzlichen vertikalen Abstand, oder ? Außerdem hast Du in Deinem Beispiel keine Gleitumgebung gesetzt, die für den dann doppelten Abstand sorgen könnte.
MfG,

trinix
21-04-2006, 08:44
Generell sind Tabellen wie Figuren in ihre entsprechende Gleitumgebung zu setzen, wenn man sie hinterher auch bezeichnen (caption) oder gar referenzieren (label & ref) will.
Schau mal in Deiner LaTeX-Doku nach Gleitumgebung (oder kurz "floats").
Das habe ich jetzt gefunden und, denke ich, auch einigermaßen verstanden. :rolleyes:
Durch Gleitumgebung wird das Objekt an eine günstige Stelle im Text gesetzt.

Soll eine Tabelle (mit ner Grafik klappt das natürlich auch) an einer bestimmten Stelle im Text erscheinen, dann läßt man sie am Einfachsten gar nicht erst gleiten (so wie Du das in Deinem Beispiel ja schon gemacht hast)...
Ist das eine saubere Art und Weise mit den Objekten umzugehen oder sollte man versuchen immer Gleitobjekte einzusetzen?
Wenn ich die Tabelle ein \table mit der Option [!h] setze, dann wird sie ganz nach oben gepackt in einem vernünftigen Abstand zum Bild im Header. Der Abstand zur Beschriftung bzw. zum Text ist jetzt auch nicht mehr so eng.
Leider verschwindet jedoch meine Fusszeile, die mit \footnotemark und \footnotetext erzeugt wurde.

trinix

rais
21-04-2006, 17:19
Moin moin,
generell sind Figuen/Tabellen zwar besser in Gleitumgebungen untergebracht, sodaß LaTeX sie so setzen kann, daß sie den Textfluß geringstmöglich hindern - wenn sie aber "hier" (also dort, wo sie im Quelltext auch gesetzt sind) erscheinen sollen, dann ist es meist günstiger, auf die Gleitumgebung zu verzichten und direkt im Text einzubauen - wie Du dann an die Beschriftung kommst, weißt Du ja bereits.
IMHO ist \begin{table}[!h] ein Widerspruch: "Laß die Tabelle gleiten, aber tu sie gefälligst hier her."
Abgesehen davon: der [!h] Parameter (solange er alleine steht) kann ggf. verhindern, daß eine Gleitumgebung gesetzt werden kann (wenn sie "hier" eben auf keinen Fall paßt) - dadurch, daß aber jede andere Platzierung untersagt wird, werden nun alle folgenden Gleitumgebungen _nicht_ mehr platziert werden können (idR werden nun alle folgenden mit aufgesammelt und ganz am Ende (wenn überhaupt) ausgegeben). Da ist dann schon der [H]-Parameter vom float-Paket günstiger...
Aber wie gesagt: wenn's sowieso "hier" sein soll, warum noch gleiten?
Fußnote innerhalb einer gleitenden Tabelle:
das ist nun nicht ohne weiteres realisierbar, vgl. FAQ 6-3-5...
Was Du also auch ausprobieren könntest:


\begin{table}[thp]
\begin{minipage}{\textwidth}
\centering
\begin{tabular}...
: \footnotemark
\end{tabular}
\caption{Eine Tabelle}\label{tab:testtab}
\footnotetext{...}
\end{minipge}
\end{table}

Dann wird die Fußnote zwar ausgegeben, gehört nun aber mit zur Minipage.
Was sich in diesem Fall günstigst auswirken sollte (Paket caption v3x):


\begin{center}
\begin{tabular}...
: \footnotemark
\end{tabular}
\captionof{table}{Eine Tabelle}\label{tab:testtab}
\footnotetext{...}
\end{center}

dann gibt's eigentlich auch keine Probleme mit evtl. auf die Tabelle folgenden Text.
MfG,

trinix
24-04-2006, 11:46
Vielen Dank für diese sehr hilfreichen Informationen.
Ich werde die Sachen entsprechend einbinden und die Tabelle setzen.

Beste Grüße,
trinix