Bilder über Rand hinaus ausgeben

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Bilder über Rand hinaus ausgeben

von KOMA » So 31. Jan 2010, 17:48

\documentclass[a5paper,pagesize,DIVcalc,BCOR=6.5mm,twoside]{scrreprt}
\usepackage[demo]{graphicx}
\usepackage{lipsum}
%\usepackage{capt-of}% für alte KOMA-Script-Versionen
\begin{document}
\lipsum[1]
\begin{addmargin*}[0pt]{\dimexpr
  -\paperwidth+\oddsidemargin+1in+\textwidth\relax}
  \noindent\begin{minipage}{\linewidth}
    \includegraphics[width=\linewidth]{Test}
    \captionof{figure}{Testabbildung}
    \label{fig:test1}
  \end{minipage}
\end{addmargin*}
\lipsum[2-4]
\begin{addmargin*}[0pt]{\dimexpr
  -\paperwidth+\oddsidemargin+1in+\textwidth\relax}
  \noindent\begin{minipage}{\linewidth}
    \includegraphics[width=\linewidth]{Test2}
    \captionof{figure}{Testabbildung 2}
    \label{fig:test2}
  \end{minipage}
\end{addmargin*}
\lipsum[5]
\end{document}
\documentclass{scrbook}
\usepackage{graphicx}
\begin{document}
\begin{figure}
   \begin{captionbeside}[i]{Triumphbogen}
      \includegraphics[width=.7\textwidth]{Triumphbogen.jpg}
   \end{captionbeside}
   \end{figure}
\end{document}
Wenn man die Abbildungen nicht gleiten lassen will. Wenn man die Abbildungen gleiten lassen will, packt man die addmargin-Umgebungen einfach jeweils in eine figure-Umgebung. Dinge wie float oder chngpage kann man sich jedoch sparen. KOMA-Script bietet mit \captionof, addmargin, \ifthispageodd etc. alles, was man für die Lösung des Problems braucht. e-TeX (heute basiert jedes LaTeX auf e-TeX) liefert mit \dimexpr die Matheunterstützung, die man braucht, um die Breite des äußeren Randes auszurechnen, wobei das auf der linken Seite nur deshalb funktioniert, weil der linke Rand mit \evensidemargin+1in genauso groß ist wie der rechte Rand auf einer rechten Seite, den ich oben berechnet habe. ;-)

Bilder über Rand hinaus ausgeben

von Teddytrombone » So 31. Jan 2010, 16:24

Hallo zusammen!

Ich habe folgendes Problem: ich möchte Bilder (müssen nicht zwingend in einer figure-Umgebung sein) so ausgeben, dass eine Seite des Bild bündig mit dem Text ist, die andere Seite des Bilds bündig mit dem Seitenrand ist. Hier ein Bild zur Veranschaulichung, wie ich mir das vorstelle: Bild

Ich habe auch schon ein paar Sachen aus dem Netz zusammengetragen, und bin dadurch auf folgendes Mini-Beispiel gekommen (statt \rule soll dann später mal ein Bild mittels \includegraphics rein):
\documentclass[a5paper,pagesize,DIVcalc,BCOR=6.5mm,twoside]{scrreprt}
\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{float}
\usepackage{chngpage}

\begin{document}
\lipsum[1]
\begin{figure}[H]
 \checkoddpage
 \ifcpoddpage
  \newcommand{\side}{l}
 \else
  \newcommand{\side}{r}
 \fi
 \makebox[\textwidth][\side]{% 
    \rule{1.2\textwidth}{5cm}
 }
\caption{Testfigure}
 \label{fig:graphiclabel}
\end{figure}
\lipsum[1-4]
\end{document}
[/img]

Das Problem, das ich jetzt habe, ist, dass, egal welchen Wert ich statt \rule{1.2\textwidth} eingebe, das Bild nie mit dem Seitenrand bündig ist. Einmal steht es etwas drüber, ein anderes Mal ist es etwas zu schmal.

Natürlich könnte ich mittels geometry genaue Abstände definieren, aber erstens gefällt mir die automatische Berechnung des Layouts mittels DIVcalc und BCOR besser, und zweitens kann es sein, dass sich die Abstände noch ändern (z.B. die Bindekorrektur).

Gibt es eine Möglichkeit, die von mir benötigte Breite genau berechnen zu lassen? Ich hätte zwar schon probiert, bei der width im \includegraphics-Befehl \textwidth-\oddsidemargin rein zu schreiben (was beim \rule leider nicht geht), aber wie gesagt, die Breite passt dann trotzdem nicht.

Hat wer eine Idee?

Nach oben