PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Höher Graphik messen?



Quaneu
12-05-2010, 09:29
Hallo,

ich suche seid ein paar Tagen verzweifelt nach einer Lösung für ein neues Problem... es werden immer mehr...

Ich erstelle mir Kopf- und Fußzeilen mit fancyhdr und binde oben rechts eine Grahik ein. Nun würde ich gern die headheigt auf die Höhe des Bildes setzen. Doch ist es in Latex überhaupt möglich die Höhe eines Bildes zu ermitteln, so dass ich

\setlength{\headheight}{Höhe von Bild}
schreiben könnte.

Gruß
Quaneu

bischi
12-05-2010, 09:31
\includegraphics[height=2em]{bild}

\setlength{\headheight}{2em}

?

MfG Bischi

Quaneu
12-05-2010, 09:35
Ich binde die Graphik mit

\includegraphics{bild}
ein, da ich die Orginalgröße behalten will (es handelt sich um Logos).

Auf der Titelseite soll nämlich das Logo in Orginalgröße bleiben. Auf den anderen Seiten mache ich es dann genau so.

bischi
12-05-2010, 09:46
Auf der Titelseite soll nämlich das Logo in Orginalgröße bleiben.

Definier mir mal bitte "Originalgrösse" ;) (bzw - falls du das vernünftig kannst, dann kennst du auch die entsprechende Grösse :D).

MfG Bischi

Quaneu
12-05-2010, 09:54
Orginalgröße = unveränderte Größe, also die gegebene Größe

Ich kann sie sicher ablesen aus der Information der Datei, jedoch erstelle ich das tex-file automatisch (siehe Beitrag Schnelle eps-Umwandlung) und da kommen immer wieder andere Logos ins Spiel und daher wollte ich das auch automatisieren und nicht immer wieder schauen und hart-codieren.
Daher hatte ich gehofft, dass ich diese in Latex irgendwie auslesen bzw. messen kann.

Gruß
Quaneu

bischi
12-05-2010, 09:56
Aber gerade wenn du ne EPS-Datei hast (VEKTORGRAFIK!!!), gibt es keine "Originalgrösse". Skalier die Logos doch einfach auf ne praktische Grösse :D

MfG Bischi

Quaneu
12-05-2010, 09:59
Da liegt das Problem genau diese liegen nicht in eps vor :(

u_fischer
12-05-2010, 10:15
Aber gerade wenn du ne EPS-Datei hast (VEKTORGRAFIK!!!), gibt es keine "Originalgrösse"

Das ist doch Unsinn. Auch bei eps-Graphiken ergibt doch \includegraphics{bild} ein Bild mit einer klar (durch die Boundingbox) definierte "natürlichen" Größe.

Messen kannst du bei allen Bilder die natürliche Größe z.B. mit \settoheight:


\documentclass{article}
\usepackage{graphicx}
\begin{document}
\newlength\mylength
\settoheight\mylength{\includegraphics{tiger}}

\the\mylength

\end{document}

Quaneu
12-05-2010, 10:22
Mal wieder vielen vielen Dank. Ist genau der Befehl den ich die ganze zeit gesucht habe...
Wo kann man die denn finden???

u_fischer
12-05-2010, 10:33
Z.B. in lshort.pdf Abschnitt 6.5 More Fun With Lengths.

Quaneu
12-05-2010, 10:44
Also nochmals vielen Dank. Werd ich mir mal durchlesen.

Gruß
Quaneu

bischi
12-05-2010, 11:36
Das ist doch Unsinn. Auch bei eps-Graphiken ergibt doch \includegraphics{bild} ein Bild mit einer klar (durch die Boundingbox) definierte "natürlichen" Größe.

Klar - allerdings ist halt die Definition von Grösse bei einer Vektorgrafik nicht sauber. Bei einer Pixelgrafik übrigens auch nicht - es sei denn es wird zusätzlich zur Grösse auch noch die Auflösung angegeben ;)

Mein Argument war, dass es wohl generell sauberer ist, die Grafik einfach auf eine feste Höhe zu skalieren, als irgendeine "Originalgrösse" zu verwenden (besonders, da verschiedene Anzeigemedien verschiedene Auflösungen haben und daher das Argument von "Grafik so lassen damit nicht skaliert wird" sowieso nicht zählt :p).

MfG Bischi

Quaneu
12-05-2010, 12:47
So jetzt bin ich doch nochmal da :)
Das Bild soll in die Kopfzeile und hat jetzt die Höhe \myHeight nun setze ich headheight neu indem ich

\addtolength{\headheight}{\myHeight}
neu .klappt auch alles wunderbar. Doch nun rutscht meine Fußzeile ins nichts...
Wird der Platz den man mehr für die headheiht nimmt nicht von der textheight abgezogen?
Hab´s dann auch mal versucht, dass ich von der textheight was abziehe ohne Erfolg...

Und es hat sich (leider) gleich noch eine Frage ergeben:
Wenn ich in der Fußzeile einen Zweizeiler an der linken Seite habe (in einer tabular-Umgebung) und footsepline aktiviert, dann geht die Linie immer über meinen Text in der Fußzeile... da es keine footheight mehr gibt, weiß ich einfach nicht wie ich das vermeiden kann....

Viele Grüße und schon mal Danke

Quaneu

u_fischer
12-05-2010, 16:08
http://www.tex.ac.uk/cgi-bin/texfaq2html?label=marginpkgs

und wegen deiner Tabelle: Mach ein Minimalbeispiel.

Quaneu
12-05-2010, 16:30
So hier ein Minibeispiel, indem die oben besagten Effekte auftreten:



\documentclass[ngerman, toc=flat]{scrreprt}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{blindtext}
\usepackage{lastpage}
\usepackage{graphicx}
\usepackage[footsepline, headsepline]{scrpage2}

\newlength\mylength
\settoheight\mylength{\includegraphics{VisuitConce ptLogo}}

\pagestyle{scrheadings}
\clearscrheadings
\clearscrplain
\manualmark
\ihead{\vfill\headmark}
\ohead{{\includegraphics[height=1cm]{VisuitConceptLogo}}}
\ifoot{\begin{tabular}{l}Datum\\\copyright...\end{ tabular}}
\ofoot{\thepage/\pageref{LastPage}}

\renewcommand{\indexpagestyle}{scrheadings}
\renewcommand{\chapterpagestyle}{scrheadings}

\renewpagestyle{useheadings}
{(\textwidth,0pt){TEXT \hfill\includegraphics{VisuitConceptLogo}}{TEXT\hf ill\includegraphics{VisuitConceptLogo}}{TEXT\hfill \includegraphics{VisuitConceptLogo}}(\textwidth,0p t)}
{(\textwidth,.4pt){\begin{tabular}{l}Datum\newline \copyright...\end{tabular}\hfill TEXT\vfill}{\begin{tabular}{l}Datum\\\copyright... \end{tabular}\hfill TEXT}{\begin{tabular}{l}Datum\\\copyright...\end{t abular}\hfill TEXT}(\textwidth,0pt)}


\begin{document}
\addtolength{\headheight}{\mylength}
\begin{titlepage}
\thispagestyle{useheadings}
\centering
\Huge{Funktionsbeschreibung}
\end{titlepage}

\addtolength{\headheight}{-\mylength}
\addtolength{\headheight}{1cm}

\chapter{Chapter}
\markright{Chapter}
\blindtext
\section{Section}
\blindtext
\end{document}

u_fischer
12-05-2010, 17:24
Minimalbeispiele sollten keine Bilder benutzen, die andere Leute nicht haben.
Außerdem sollte sich ein Minimalbeispiel auf ein Problem konzentrieren. Je einfacher je besser.

Du kannst die Inhalte der Fußzeile mit \rule-Befehle verschieben. Es ist dabei einfacher, wenn beide Teile zusammen in \ifoot sind.


\documentclass[ngerman, toc=flat]{scrreprt}
\usepackage[latin1]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{lipsum}
\usepackage{lastpage}

\usepackage[footsepline, headsepline]{scrpage2}

\pagestyle{scrheadings} \clearscrheadings \clearscrplain \manualmark
\ihead{\headmark} \ohead{}
%\ifoot{\rule{0pt}{1.5cm}\begin{tabular}{l}Datum\\ \copyright...\end{tabular}}
%\ofoot{\rule{0pt}{1cm}\thepage/\pageref{LastPage}}

\ifoot{%
\rule{0pt}{0.5cm}%
\parbox{\textwidth}{%
\begin{tabular}{l}Datum\\\copyright...\end{tabular }\hfill
\thepage/\pageref{LastPage}}}
\begin{document}
\lipsum
\end{document}

Quaneu
12-05-2010, 17:44
Danke für den Hinweis, werd ihn bei den nächsten Minibeispielen berücksichtigen.

Perfekt, wie kann ich Dir nur danken (ist ja nicht das erste mal:) )

Ist schaue ich mir noch das mit geometry an und hoffe so das andere Problem in den Griff zu bekommen.

Gruß
Quaneu