TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

is there a way to tell the a node, where the arrow shall arrive?

At this example, the Arrow from Node B to A should arrive exactly in the middle of the "D" from "Dies". It should start on top-center of B's text.

Hope this is understandable.

\documentclass[11pt, halfparskip,toc=flat,numbers=noendperiod]{scrartcl}
\usepackage{ngerman} % deutsche Silbentrennung, Deutsche Ausdrücke




    \rput[t](5, 5){
                Dies ist Node A

    \rput[t](0, 2.5){
                Dies ist der Text\\
                zu Node B

                Mein Name ist C, Node C

                Ich bin Node D\\
                Ich stehe ganz unten





share|improve this question
up vote 1 down vote accepted

There is a way. \nccurve for example allows to specify connection angles and offsets. If less precision were sufficient you could go with a one-liner; since you're looking for exact placement, you need some more code:

%calculate offset
\settowidth{\labellength}{Dies ist Node A}

%draw curve

The ncurv parameters, set to their defaults here, allow you to adjust the curve's shape. A and B, not to be confused with your node names, refer to the start and end node. For more details see the manual linked by @MarcoDaniel; several other options to connect two nodes are presented there as well.

enter image description here

share|improve this answer

With your current settings it can't be done. The node specifier \rnode has an optional argument to specify the refpoint but only once. The specifier is equal to \rput.

However the package pst-node offers an other way. You can use the new command \psDefBoxNodes{node name }{text } whereby the displayed refpoints will be defined:

The example is taken from the manual:


\psscalebox{15}{\psDefBoxNodes{Age}{\color{red!50}\sffamily \"Age}}%
\uput[90](Age:tC){tC} \uput[0](Age:C){C}
\uput[0](Age:BC){BC} \uput[-90](Age:bC){bC}
\uput[0](Age:tr){tr} \uput[0](Age:Cr){Cr} \uput[0](Age:Br){Br} \uput[0](Age:br){br}

enter image description here

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.