Formatieren mit table und .tex darin einfügen

Layout von Seiten, Rändern, Fusszeilen, usw, modifizieren


BrEin
Forum-Anfänger
Forum-Anfänger
Beiträge: 28
Registriert: Di 21. Mai 2013, 14:55

Formatieren mit table und .tex darin einfügen

Beitrag von BrEin »

Hallo Leute,

ich möchte ganz gerne einen Abschnitt meines Textes zweispaltig formatieren.
Aber nicht so, dass erst die linke Spalte voll läuft und dann die rechte, sondern, dass links mein Text steht und rechts die Bilder (4 Stück) auf die sich der Text bezieht.
Besonderheit: die Bilder erstelle ich mit TikZ und diese sind in einem .tex Dokument geschrieben, dass ich mit \input einbinden möchte.

Nun habe ich es erstmal mit wrapfig versucht. Das funktioniert sonst sehr gut. Leider ist es so, dass, man nicht so häufig, Bilder mit wrapfig einfügen kann, da er sonst mit der Formatierung durcheinander kommt. So zu mindestest meine Erfahung.

Also was funktioniert ist:
WRAPFIG % bild rechtsbündig einfügen, Text verläuft links.
Richtig viel Text, so dass die Linke Seite des Bildes voll wird und richtig viele Zeilen unterhalb des Bildes auch gefüllt werden.
WRAPFIG % bild rechtsbündig einfügen, Text verläuft links.
Richtig viel Text, so dass die Linke Seite des Bildes voll wird und richtig viele Zeilen unterhalb des Bildes auch gefüllt werden.
WRAPFIG % bild rechtsbündig einfügen, Text verläuft links.
Richtig viel Text, so dass die Linke Seite des Bildes voll wird und richtig viele Zeilen unterhalb des Bildes auch gefüllt werden.


Also bei mir nicht funktioniert ist:
WRAPFIG % bild rechtsbündig einfügen, Text verläuft links.
Text füllt linke Seite und gerade mal 1 bis 2 Zeilen unterm Bild.
WRAPFIG % bild rechtsbündig einfügen, Text verläuft links.
Text füllt linke Seite und gerade mal 1 bis 2 Zeilen unterm Bild.
WRAPFIG % bild rechtsbündig einfügen, Text verläuft links.
Text füllt linke Seite und gerade mal 1 bis 2 Zeilen unterm Bild.


Also habe ich folgendes versucht. Ich wollte den Inhalt mit einer Tabelle formatieren.
Linke Spalte mit \multirow den Text einfügen und rechte Spalte zeilenweise die Bilder.
Die Breite der Linken Spalte soll entweder \textwidth / 2 sein oder der rechten Spalte so viel Platz lassen, dass die Bilder rein passen. Das ist bei den richtigen Bilder fast das Gleiche.

Erstmal ein Beispiel:
\documentclass[11pt, a4paper]{scrreprt}

\usepackage{multirow}
\usepackage{tikz}
\usetikzlibrary{calc,decorations.markings}

\begin{document}
	\begin{tabular}{|l|c|}
		\multirow{4}{10cm}{Das hier ist ein richtig langer Text, der detailliert auf jede Zeichnung auf der rechten Seite eingeht. Dabei möchte ich, dass der Text komplett links steht und inhaltlich auf die Bilder/Zeichnungen auf der rechten Seite verweist. Dafür müssen sowohl die Bilder, als auch die zugehörigen Überschriften und Labels eingebunden werden.}
		& \input{Kreis.tex} \\
		& Zweite Zeichnung \\
		& Dritte zeichnung \\
		& vierte Zeichnung
	\end{tabular}
\end{document}
% Kreis.tex

\begin{center}
\begin{tikzpicture}
	\path[draw] (0,0) circle (1cm);
\end{tikzpicture}
\caption{Kreis}
\label{fig:Kreis}
\end{center}
So bringt es mir folgenden Fehler:
  • ! LaTeX Error: Something's wrong--perhaps a missing \item.
    See the LaTeX manual or LaTeX Companion for explanation.
    Type H <return> for immediate help.
    ...
    l.1 \begin{center}
    Try typing <return> to proceed.
    If that doesn't work, type X <return> to quit.
Wenn ich \begin{center} und \caption und \label auskommentiere geht es zwar, dann habe ich aber keine Überschrift und keine Referenz. Und des weiteren sieht die Formatierung dennoch nicht so ganz aus, wie ich mir da vorgestellt habe.

Bild

Hat jemand eine zündende Idee, wie ich das ganze besser formatieren kann?

Vielen Dank
Fabian

Epllus
Forum-Guru
Forum-Guru
Beiträge: 470
Registriert: So 23. Sep 2012, 17:31

Beitrag von Epllus »

Du könntest das paracol Packet verwenden.
\documentclass[ngerman]{scrartcl}

\usepackage{babel}
\usepackage[applemac]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{paracol}
\usepackage{mwe}

\begin{document}

\begin{paracol}{2}

\includegraphics[width=0.9\linewidth, height=0.95\textheight]{example-image-a}
\captionof{figure}{Kreis} 
\label{Kreis}

\switchcolumn

\blindtext 

Siehe Bild \ref{Kreis}.

\blindtext\blindtext

\switchcolumn

\includegraphics[width=0.9\linewidth, height=0.95\textheight]{example-image-b}
\captionof{figure}{Rechteck} 
\label{Rechteck}

\switchcolumn

\blindtext 

Siehe Bild \ref{Rechteck}.

\blindtext

\end{paracol}


\end{document}

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Beitrag von esdd »

Hier ist mal ein Vorschlag als Tabelle:
\documentclass{scrreprt}

\usepackage{filecontents}
% Erzeugen/Überschreiben der Datei Kreis.tex
\begin{filecontents*}{Kreis1.tex}
\begin{varwidth}{\linewidth}
  \begin{center} 
    \begin{tikzpicture} 
        \path[draw] (0,0) circle (1cm); 
    \end{tikzpicture} 
    \captionof{figure}{Kreis}
    \label{fig:Kreis} 
  \end{center}
\end{varwidth}
\end{filecontents*}

\usepackage{selinput} 
\SelectInputMappings{adieresis={ä},germandbls={ß},Euro={€}} 
\usepackage[ngerman]{babel}
\usepackage{tabularx}
\usepackage{booktabs}

\usepackage{tikz} 
\usetikzlibrary{calc,decorations.markings} 
\usepackage{varwidth}

\begin{document} 

\begingroup
  \renewcommand\tabularxcolumn[1]{m{#1}}
  \renewcommand\arraystretch{2}
  \noindent\begin{tabularx}{\linewidth}{Xc} 
    \toprule
    Das hier ist ein richtig langer Text, der detailliert auf jede Zeichnung auf der rechten Seite eingeht. Dabei möchte ich, dass der Text komplett links steht und inhaltlich auf die Bilder/Zeichnungen auf der rechten Seite verweist. Dafür müssen sowohl die Bilder, als auch die zugehörigen Überschriften und Labels eingebunden werden. 
    &\input{Kreis1}\\
    \midrule
    & Zweite Zeichnung \\
    \midrule
    & Dritte zeichnung \\ 
    \midrule
    & vierte Zeichnung\\
    \bottomrule
  \end{tabularx}
\endgroup

\end{document}
Du kannst aber auch den Text und das Bild als Noden nebeneinandersetzen:
\documentclass{scrreprt}

\usepackage{filecontents}
% Erzeugen/Überschreiben der Datei Kreis.tex
\begin{filecontents*}{Kreis1.tex}
\begin{varwidth}{\linewidth}
  \begin{center} 
    \begin{tikzpicture} 
        \path[draw] (0,0) circle (1cm); 
    \end{tikzpicture} 
    \captionof{figure}{Kreis}
    \label{fig:Kreis} 
  \end{center}
\end{varwidth}
\end{filecontents*}

\usepackage{selinput} 
\SelectInputMappings{adieresis={ä},germandbls={ß},Euro={€}} 
\usepackage[ngerman]{babel}
\usepackage{tabularx}
\usepackage{booktabs}

\usepackage{tikz} 
\usetikzlibrary{calc,decorations.markings,positioning} 
\usepackage{varwidth}

\newcommand{\TextMitBild}[2]{%
  \noindent\begin{tikzpicture}[tab/.style={inner sep=0pt, outer sep=0pt}]%
    \node[text width=0.3\linewidth,align=right](Bild){\input{#2}};
    \node[text width=0.65\linewidth,align=justify][left= 0.05\linewidth of Bild]{#1};
  \end{tikzpicture}}

\begin{document} 
  \TextMitBild%
    {Das hier ist ein richtig langer Text, der detailliert auf jede Zeichnung auf der rechten Seite eingeht. Dabei möchte ich, dass der Text komplett links steht und inhaltlich auf die Bilder/Zeichnungen auf der rechten Seite verweist. Dafür müssen sowohl die Bilder, als auch die zugehörigen Überschriften und Labels eingebunden werden.}%
    {Kreis1}
\end{document}
Gruß
Elke

BrEin
Forum-Anfänger
Forum-Anfänger
Beiträge: 28
Registriert: Di 21. Mai 2013, 14:55

Beitrag von BrEin »

Danke @Epllus!
Das funktioniert wunderbar. Die anderen beiden Vorschcläge habe ich mir noch nicht ansehen können. Aber Danke auch dafür.

Gruß
Fabian

Antworten