Liebe Texwelt, ich würde gerne zu Beginn meiner longtable eine Zelle herausgreifen um die einzelnen Teilbereiche dieser zu beschriften/erklären. Dafür hätte ich gerne die Erklärung außerhalb dieser Zelle stehen, wobei diese dann mit einen Pfeil/Strich in den jeweiligen Teilbereich verbunden werden soll. Bin schon auf "pin" usw. gestoßen, allerdings scheint das ja nur in einer Tikz-Umgebung zu funktionieren.

Open in Online-Editor
\documentclass[fleqn,12pt,a4paper,german,xcolor=dvipsnames]{article}
\usepackage[ngerman]{babel}
\usepackage{diagbox}
\usepackage{longtable}
\usepackage{xcolor}

\begin{document}
\begin{longtable}{|l|}

\hline
 \diagbox{\colorbox{gray}{\textcolor{black}{0}\textcolor{white}{0}}}{256}\quad\vline\qquad3345 \\ \hline
\end{longtable} 
\end{document}

gefragt 11 Jun '15, 16:22

laa21794's gravatar image

laa21794
29441821
Akzeptiert-Rate: 0%


Ich weiß nicht, wie das am Schluß aussehen soll. Vielleicht so:

alt text

Open in Online-Editor
\documentclass[margin=3pt]{standalone}
%\documentclass[fleqn,12pt,a4paper,german,xcolor=dvipsnames]{article}
\usepackage[ngerman]{babel}
\usepackage{diagbox}
\usepackage{longtable}
\usepackage{xcolor}

\usepackage{tikz}

\newcommand{\Marker}{%
\begin{tikzpicture}[inner sep=0pt, outer sep=0pt, remember picture]
\node[shape=rectangle](Marker1){};
\end{tikzpicture}
}%
\begin{document}

\begin{minipage}{0.5\textwidth}
\begin{longtable}{|l|}
\hline
 \diagbox{\colorbox{gray}{\textcolor{black}{0}\textcolor{white}{0}}}{256}\quad\vline\qquad3345\Marker\\ \hline
\end{longtable} 
\end{minipage}
%
\begin{tikzpicture}[remember picture, baseline = 1.75mm]
\node[draw, minimum height=1cm, rounded corners, fill=lightgray](Marker2){Das ist super...};
\end{tikzpicture}

\begin{tikzpicture}[remember picture, overlay]
\draw[<-, ultra thick, shorten >=2pt] (Marker1) -- (Marker2) node[midway, above]{Text};
\end{tikzpicture}

\end{document}
Permanenter link

beantwortet 12 Jun '15, 01:04

cis's gravatar image

cis
9.5k93459491
Akzeptiert-Rate: 29%

bearbeitet 12 Jun '15, 01:06

ok, das hilft mir schon mal sehr weiter, danke dafür. Wie kann ich die Position meiner Erklärung verändern? Also falls ich zum Beispiel wollen würde, dass "Das ist super..." nicht rechts der Zelle sondern unterhalb stehen soll?

(12 Jun '15, 10:15) laa21794

Mir ist auch nicht klar, wie das Ergebnis aussehen soll. Trotzdem ist hier mal noch ein alternativer Vorschlag:

alt text

Ich würde dafür insgesamt ein tikzpicture verwenden. Das erleichtert die Positionierung der Erklärungen relativ zur Tabellenzelle, wobei ich dafür auch die Bibliothek positioning laden würde.

Eine longtable kann man zwar nicht in einen Node setzen, aber da es sowieso nur um eine Zelle geht, verwende ich dafür einfach tabular.

Die einzelnen Elemente in der Node mit der Tabellenzelle markiere ich mit \subnode, was die Nutzung der Bibliothek tikzmark erfordert. Außerdem muss die remember picture Option gesetzt werden. Damit erfordert die Erstellung auch zwei Durchläufe.

Die Pfeile richte ich zwar an den zu beschreibenden Inhalten aus, würde sie aber nicht bis in die Zelle gehen lassen.

Code:

Open in Online-Editor
\documentclass[fleqn,12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{diagbox}
\usepackage{longtable}

\usepackage{tikz}
\usetikzlibrary{tikzmark}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}[
  remember picture,
  erkl/.style={text width=#1,align=left},
  erkl/.default=.5\linewidth,% voreingestellt ist halbe Zeilenlänge
  pfeil/.style={thick,-stealth},
  ]
\node(tabzelle){%
  \begin{tabular}{|l|}
    \hline
    \diagbox{\subnode{inh_u}{\colorbox{gray}{\textcolor{black}{0}\textcolor{white}{0}}}}{\subnode{inh_o}{256}}\quad\vline\qquad\subnode{inh_r}{3345} \\
    \hline
  \end{tabular}
};
\node(erkl_u)[erkl,below=of tabzelle.south west,anchor=north west]
  {Erklärung unterhalb, die etwas länger ist und einen Zeilenumbruch braucht};
\node(erkl_o)[erkl,above=of tabzelle.north west,anchor=south west]
  {Erklärung oberhalb, die etwas länger ist und einen Zeilenumbruch braucht};
\node(erkl_r)[erkl,right=of tabzelle]
  {Erklärung rechts, die etwas länger ist und einen Zeilenumbruch braucht};
\path[pfeil](erkl_u.north-|inh_u)edge(inh_u|-tabzelle.south);
\path[pfeil](erkl_o.south-|inh_o)edge(inh_o|-tabzelle.north);
\path[pfeil=\tabcolsep](erkl_r.west|-inh_r)edge(inh_r-|tabzelle.east);
\end{tikzpicture}
\end{document}
Permanenter link

beantwortet 12 Jun '15, 15:34

esdd's gravatar image

esdd
17.8k284257
Akzeptiert-Rate: 62%

bearbeitet 12 Jun '15, 16:50

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

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ügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×50
×39

gestellte Frage: 11 Jun '15, 16:22

Frage wurde gesehen: 11,035 Mal

zuletzt geändert: 12 Jun '15, 16:50