PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Zwei Bilder nebeneinander



bruschino
14-12-2012, 18:10
Hallo zusammen,

ich habe einen Text mit zwei Spalten. Ich moechte zwei Grafiken nebeneinander platzieren, sodass sie die ganze Textbreite der Seite ausnutzen. Bisher verwende ich folgende Syntax:

\begin{figure*}[h!]
\centering
\subfigure[]{\includegraphics[scale=0.25]{grafik1}}\hfill
\subfigure[]{\includegraphics[scale=0.25]{grafik2}}
\caption{Meine caption, die die ganze Seite umfasst}
\end{figure*}

Ich bekomme auch was Sinnvolles raus, nur, egal was ich mache, LaTeX schiebt die so definierte Figur ins Niemandsland ans Ende meines Dokuments in die Mitte einer neuen Seite. Und das ist unabhaengig davon, was ich in die eckige Klammer nach \begin{figure*} schreibe. Am liebsten waere mir, wenn die Figur oben auf der Seite, auf der ich sie erwaehne, erscheint. Hat jemand von euch eine Idee, was ich machen koennte? Habe auch schon nach anderen Loesungen gegoogelt, aber bei mir scheint nichts so wirklich zu funktionieren.

Daniel
14-12-2012, 20:50
hi, ich habe mir etwas hingefrimmelt. Wenn's das gemeint ist, kann ich auch noch den Quelltext zur Verfügung stellen. Es gibt nur ein Manko: Nach den beiden Grafiken muss eine neue Seite begonnen werden. Vielleicht lässt sich das noch abstellen.

hakaze
15-12-2012, 09:11
Das Verhalten von Latex hat schon seinen Sinn. Schließlich soll ja der Text nicht zweimal durch eine Abbildung, die mitten im Satzspiegel über beide Spalten reicht, "durchlaufen". Deshalb ist beim zweispaltigen Satz der Platzierung am Beginn der Seite bzw. auf einer einzelnen Seite bevorzugt. Siehe auch diese längere Ausfürhung von Frank Mittelbach auf englisch (http://tex.stackexchange.com/a/39020/17198) (Hervorhebung von mir):
Double-column floats are always deferred first
When LaTeX encounters a page-wide float environment (indicated by a * at the end of the environment name, e.g., figure*) in two column-mode, it immediately moves it to the deferred queue. The reason for this behavior again lies in the "greedy" behavior of its algorithm: if LaTeX is currently assembling the second column of that page, the first column has already been assembled and stored away; recall that because LaTeX does not back-track there is no way to fit the float on the current page. To keep the algorithm simple, it does the same even if working on the first column (where it could in theory do better even without back-tracking).

Thus, in order to place such a float onto the current page, one has to manually move it to an earlier place in the source -- before the start of the current page. If this is done, obviously any further change in the document could make this adjustment obsolete; hence, such adjustments are best done (if at all) only at the very last stage of document production --- when all material has been written and the focus is on fine-tuning the visual appearance.

Um etwas mehr Spielraum bei Platzierung zu haben, bietet sich das Paket multicol (http://texdoc.net/texmf-dist/doc/latex/tools/multicol.pdf) an Stelle der twocolumn Klassenoption an. So können die Abschnitte vor der Abbildung "ordentlich" beendet werden, d.h. der Text wird auf die zwei Spalten verteilt und sonit ein horizontaler Abschluss erreicht:

\documentclass[a4paper]{article}

\usepackage{subfigure} % fürs Beispiel eigentlich unnötig
\usepackage{multicol} % flexiblere Textspalten
\usepackage{blindtext} % für Fülltext

\begin{document}

\begin{multicols}{2}
\blindtext[2]
\end{multicols}

\begin{figure}[htb] % geht auch ohne *, denn hier ist es 1-spaltig
\centering
\subfigure[]{\rule{0.25\textwidth}{2cm}}\hfill
\subfigure[]{\rule{0.25\textwidth}{2cm}}
\caption{Meine caption, die die ganze Seite umfasst}
\end{figure*}

%\clearpage
\begin{figure}[tb]
\centering
\subfigure[]{\rule{0.25\textwidth}{5cm}}\hfill
\subfigure[]{\rule{0.25\textwidth}{5cm}}
\caption{Meine caption, die die ganze Seite umfasst}
\end{figure}

\begin{multicols}{2}
\blinddocument
\end{multicols}
\end{document}

Festus
17-12-2012, 14:40
hi, ich habe mir etwas hingefrimmelt. Wenn's das gemeint ist, kann ich auch noch den Quelltext zur Verfügung stellen. Es gibt nur ein Manko: Nach den beiden Grafiken muss eine neue Seite begonnen werden. Vielleicht lässt sich das noch abstellen.

Unuseful comment no. 2319 (estimated)!!!

Mal ernsthaft, hast du den Hang dich gern bitten zu lassen? "Oh bitte, lieber Daniel, du kannst es ja, bitte, bitte, gib mir auch den Code dazu." Du hast den LaTeX Code doch offensichtlich schon geschrieben, wenn ich von deinem PDF ausgehe, also wo wäre das Problem ihn hier direkt einzufügen. Wenn er läuft, kann dir der Fragende auch auf dessen Basis sagen, ob es das ist, was er meinte. Und wenn in vielen, vielen Jahren mal wieder jemand nach so einer Lösung sucht, findet er Code vor, den er benutzen kann; nicht nur ein PDF, das ihm zeigt, dass irgendwann irgendjemand mal wusste wie's geht und es lieber für sich behalten hat. Immerhin ist so ein Forum auch ein Archiv für Fragen und Antworten, die im Idealfall über die Mitgliedschaft/Erreichbarkeit einzelner user hinaus erhalten bleiben. Oder hättest du gerne, dass jetzt und in Zukunft jeder persönlich bei dir anfragt, ob du so großzügig sein könntest, ihn an deiner Weisheit teilhaben zu lassen? Wenn das der Fall ist, kann ich dir dazu zwei Dinge sagen: 1. Es gibt hier genügend Leute die gerne helfen und hilfreiche Antworten geben, so dass auf dich niemand angewiesen ist. Und 2. Du solltest dich evtl. mal auf Minderwertigkeitskomplexe hin untersuchen lassen!

hakaze
17-12-2012, 14:48
Unuseful comment no. 2319 (estimated)!
Don't feed the troll! :cool:

Festus
17-12-2012, 14:50
Don't feed the troll! :cool:

Du hast sicher recht, aber dieser Typ regt mich auf :mad:

Daniel
17-12-2012, 19:29
Sorry, ich schaue hier nur gelegentlich vorbei.

\documentclass[10pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[latin9]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[babel,german=guillemets]{csquotes}
\usepackage{graphicx,color,xcolor,geometry}
\usepackage{microtype}
\usepackage{fancybox}
\usepackage{bera}
\usepackage{multicol}
\geometry{
paperwidth=170mm,
paperheight=220mm}

\setlength{\columnsep}{8mm}
\setlength{\parindent}{0pt}
\setlength{\unitlength}{1mm}
\begin{document}

\begin{multicols}{2}
Ein Gericht in K\"oln hat die Beschneidung verboten, nachdem ein Junge dadurch starke Blutungen bekam und ins Krankenhaus eingeliefert werden musste. Aus islamischer, j\"udischer und sogar kirchlicher Seite kam es zu Einw\"anden.
Das religi\"ose Ritual der Zirkumzision geht auf Abraham zur\"uck. Im Buch Genesis Kapitel 17 ist davon die Rede. Die Ausf\"uhrungen sind an Strenge und Rigorosit\"at kaum zu \"uberbieten. Aber solche Erz\"ahlungen sind nicht in einem Guss geschrieben worden. Abraham wurde erst mit 99 Jahren beschnitten und Ismael mit dem 13.\ Lebensjahr. Wenn auch die Beschneidung mit der Umbenennung der beiden alten Eheleute {\small (Abraham und Sarah)} und der Ank\"undigung der Geburt Isa\-aks einhergeht und somit Neuheiten darstellen, ist der Grundstein von den damaligen hohen j\"udischen Autorit\"aten mit Absicht gelegt worden. Es gibt einige biblische Einw\"ande dagegen.\bigskip

\begin{picture}(40,25)
\color{blue}
\put(-30,-12){\makebox(0,0){Test}}
\put(-30,-12){\fancyoval(40,15)}
\put(28, -12){\fancyoval(40,15)}
\end{picture}
\end{multicols}

\end{document}