Wenn ich ein Bild im LaTeX einfüge... Gibt es einen Befehl der mir die Größe des Bildes zurückgibt? Weil je nachdem wie groß das Bild ist möchte ich mit xscale und yscale das bild mit einem Faktor multiplizieren damit verschiedene Bilder mit unterschiedlicher Größe (Pixel) einheitlich gleich groß im LaTeX dargestellt werden... Oder gibt es einen anderen Befehl für dieses Problem... Danke :)

gefragt 17 Aug '14, 12:03

Tom87's gravatar image

Tom87
2135
Akzeptiert: 0%

bearbeitet 17 Aug '14, 12:52

Ijon%20Tichy's gravatar image

Ijon Tichy
4.4k618

Hier wäre ein Minimalbeispiel interessant, das uns zeigt wie du Bilder bisher einbindest.

(17 Aug '14, 12:06) NobbZ

Könntest Du bitte ein Minimalbeispiel einfügen? Also ein möglichst kurzes, aber komplettes Dokument, von \documentclass{...} bis zu \end{document}, was das Problem zeigt. Das vereinfacht die Bearbeitung erheblich und ist meist eine Garantie für eine Lösung. Bitte gib auch möglichst genau an, was Du erreichen willst und nicht nur, welches Problem Du bei Deinem Versuch hast, das Ziel zu erreichen (Stichwort XY-Problem).

(17 Aug '14, 12:08) Ijon Tichy

Statt das Bild erst auszumessen und es dann in x- und y-Richtung unterschiedliche zu skalieren, kann man bei \includegraphics (siehe Paket graphicx) auch einfach gleich angeben, wie groß das Bild werden soll:

Open in writeLaTeX
\documentclass{article}
\usepackage{mwe}% Nur zu Demo-Zwecken!
\usepackage{graphicx}
\begin{document}
Mit Verzerrung:
\begin{center}\includegraphics[width=2cm,height=5cm]{example-image}\end{center}
Ohne Verzerrung:
\begin{center}\includegraphics[width=2cm,height=5cm,keepaspectratio]{example-image}\end{center}
\end{document}

Näheres ist in der Anleitung zum Paket graphicx zu finden.

Um die Ausdehnung von Material auszumessen, kann man die Befehle \settowidth, \settoheight und \settodepth verwenden. Dabei ist das erste Argument jeweils eine LaTeX-Länge und das zweite das Material, also beispielsweise:

Open in writeLaTeX
\documentclass{article}
\usepackage{mwe,graphicx}
\newlength{\MeineTestLaenge}% irgendwo in der Präambel einfügen
\begin{document}
\settowidth{\MeineTestLaenge}{\includegraphics{example-image}}
example-image ist \the\MeineTestLaenge{} breit und 
\settoheight{\MeineTestLaenge}{\includegraphics{example-image}} \the\MeineTestLaenge{}
hoch. Tiefe hat sie wie alle Abbildungen nicht.
\end{document}

Alternativ kann man Material auch in einer Box speichern und diese dann ausmessen.

Open in writeLaTeX
\documentclass{article}
\usepackage{mwe,graphicx}
\newsavebox\MeineTestBox
\begin{document}
\savebox\MeineTestBox{\includegraphics{example-image}}
example-image ist \the\wd\MeineTestBox{} breit, \the\ht\MeineTestBox{} hoch
und (wie zu erwarten war) \the\dp\MeineTestBox{} tief.
\end{document}

Aber auch, wenn die Abbildung bereits in einer Box gespeichert ist, lohnt es sich eher nicht, erst Vergrößerungsfaktoren für \scalebox zu berechnen, sondern man kann sie einfach mit \resizebox skalieren, beispielsweise:

Open in writeLaTeX
\documentclass{article}
\usepackage{mwe,graphicx}
\newsavebox\MeineTestBox
\begin{document}
\savebox\MeineTestBox{\includegraphics{example-image}}%
% Nur verkleinern, wenn zu breit:
\noindent\ifdim\wd\MeineTestBox>\linewidth
  \resizebox{\linewidth}{!}{\usebox{\MeineTestBox}}%
\else
  \usebox{\MeineTestBox}%
\fi
\end{document}

\scalebox und \resizebox sind ebenfalls in der Anleitung zu den Paketen graphics und graphicx dokumentiert.

Permanenter link

beantwortet 17 Aug '14, 12:12

Ijon%20Tichy's gravatar image

Ijon Tichy
4.4k618

bearbeitet 17 Aug '14, 12:27

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Aktuelle Buch-Infos

LaTeX Cookbook

LaTeX Beginners Guide

Limitierter Rabatt ebook
50% Coupon code tDRet6Y

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×19
×12

Frage gestellt: 17 Aug '14, 12:03

Frage wurde angeschaut: 8,807 Mal

Zuletzt aktualisiert: 17 Aug '14, 12:52