Ich möchte Verbindungslinien / Pfeile zwischen verschiedenen Bildern setzen. Wie kann ich das machen?

Das Resultat soll z.B. so aussehen:

alt text

Arbeitsordner mit Hilfsdateien

gefragt 10 Jun '15, 17:39

cis's gravatar image

cis
5.4k860169
Akzeptiert: 68%

bearbeitet 10 Jun '15, 17:45


Mit dem Paket onimage:

Hierzu wurden die Bilder in eine TikZ-Node gesteckt, um die Funktion remember picture zu nutzen. Die Markierungsnodes dagegen stehen in der onimage-Umgebung. Um das Koordinatengitter auszublenden, muss tsx/show help lines auskommentiert werden.

alt text

Open in Online-Editor
\documentclass[margin=5pt]{standalone}
%\documentclass{scrreprt}

%\usepackage{tikz}
\usepackage{onimage}

\usepackage{mwe}

\begin{document}

\begin{tikzpicture}[remember picture
%rotate=180,transform shape
]
\node[]{
\begin{tikzonimage} [width=0.5\textwidth]{example-image-a}[tsx/show help lines,
]
\node at (0.2,0.7) [shape=rectangle,draw,fill=brown] (n1) {};
\node at (0.75,0.3) [shape=rectangle,fill=red] (n2) {};

\draw[orange!50!red, ultra thick] (0.225, 0.0125) rectangle (0.65,0.35) 
node[midway] {Text im Rahmen};
\end{tikzonimage}
};
\end{tikzpicture}

\begin{tikzpicture}[remember picture
]
\node[]{
\begin{tikzonimage} [width=0.3\textwidth]{example-image-b}[tsx/show help lines,
]
\node at (0.2,0.7) [shape=rectangle,fill=orange] (n3) {};
\node at (0.75,0.9) [shape=rectangle,fill=yellow] (n4) {};
\end{tikzonimage}
};
\end{tikzpicture}

%Verbindungspfeile
\begin{tikzpicture}[remember picture,overlay, >=latex]
\draw[->,ultra thick,magenta] (n1) -| (n3);
\draw[->,ultra thick,magenta!50!black] (n2) -| (n4) node[very near start, above, fill=green]{Hier ein Text};
\end{tikzpicture}

\end{document}

Nur mit TikZ:

alt text

Open in Online-Editor
\documentclass{scrreprt}

\usepackage{tikz}
\usepackage{mwe}

\begin{document}

\begin{minipage}{.5\textwidth}
\includegraphics[width=\textwidth]{example-image-a}
\begin{tikzpicture}[remember picture,overlay] 
\node at (2,1) [shape=rectangle,draw,fill=brown] (n1) {};
\node at (1.5,3) [shape=rectangle,fill=red] (n3) {};
\end{tikzpicture}
\end{minipage}
%
\begin{minipage}{.3\textwidth}
\vspace{2.5cm}
\includegraphics[width=0.5\textwidth]{example-image-b}
\rule{50pt}{50pt}
\begin{tikzpicture}[remember picture,overlay]
 \node at (-1,1)[fill=orange] (n2) {};
 \node at (-2.5,1)[fill=yellow] (n4) {};
 \end{tikzpicture}
\end{minipage}

%Verbindungspfeile
\begin{tikzpicture}[remember picture,overlay, >=latex]
\draw[->,ultra thick,magenta] (n1) -| (n2);
\draw[->,ultra thick,magenta!50!black] (n3) -| (n4) node[midway, above]{Hier ein Text};
\end{tikzpicture}

\end{document}
Permanenter link

beantwortet 10 Jun '15, 17:42

cis's gravatar image

cis
5.4k860169

bearbeitet 10 Jun '15, 17:47

1

@cis Eigentlich hatte ich ja gehofft, wie vermutlich @saputello auch, dass Du seinen Vorschlag in Deine Antwort einbaust. So habe ich jetzt doch noch eine eigene geschrieben.

(15 Jun '15, 10:32) esdd

Wie @saputello schon in einem Kommentar erwähnt hat, stellt onimage auch die Umgebung tikzonnode bereit, die es ermöglicht die Bilder in einem Node einzufügen und anschließend darauf zu zeichnen. Damit ist es möglich alle Bilder in einem tikzpicture einzufügen, was die Positionierung erleichtert. Dann genügt auch ein Durchlauf zum Erstellen.

Open in Online-Editor
\documentclass[margin=5pt]{standalone}
\usepackage{onimage}
\usetikzlibrary{positioning}

\usepackage{mwe}% für die Beispielbilder
\begin{document}
\begin{tikzpicture}
\node[inner sep=0pt](imagea){\includegraphics[width=0.5\textwidth]{example-image-a}};
\node[inner sep=0pt,right=of imagea.south east,anchor=south west](imageb)
  {\includegraphics[width=0.3\textwidth]{example-image-b}};

\begin{tikzonnode}{imagea}[tsx/show help lines]
\node at (0.2,0.7) [shape=rectangle,draw,fill=brown] (n1) {};
\node at (0.75,0.3) [shape=rectangle,fill=red] (n2) {};
\draw[orange!50!red, ultra thick] (0.225, 0.0125) rectangle (0.65,0.35) 
  node[midway] {Text im Rahmen};
\end{tikzonnode}

\begin{tikzonnode}{imageb}[tsx/show help lines]
\node at (0.2,0.7) [shape=rectangle,fill=orange] (n3) {};
\node at (0.75,0.9) [shape=rectangle,fill=yellow] (n4) {};
\end{tikzonnode}

\draw[->,ultra thick,magenta] (n1) -| (n3);
\draw[->,ultra thick,magenta!50!black] (n2) -| (n4) 
  node[very near start, above, fill=green]{Hier ein Text};
\end{tikzpicture}
\end{document}

alt text

Permanenter link

beantwortet 15 Jun '15, 10:29

esdd's gravatar image

esdd
14.2k53251

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:

×492
×3

Frage gestellt: 10 Jun '15, 17:39

Frage wurde angeschaut: 3,044 Mal

Zuletzt aktualisiert: 15 Jun '15, 10:32