Is there seriously no way to put an arrow in the middle of a line?

30 options for arrows and not one way to put them in the middle fml

I don’t know what you’re trying to accomplish, so I don’t know if this will help in your case, but you can connect lines together. (The lines need to be set to “allow connections from lines” in the Connections inspector.)

The purpose of the arrow is to show direction (of the line), it is placed at the end of the line (in OmniGraffle terms, the HeadEnd of the line). This is the de facto standard across all sciences for a few thousand years. (There are some LineEnd symbols which do have the arrow slightly in from the LineEnd itself but these are in fact LineEnd symbols, and remain at the LineEnd.) Therefore the notion of the LineEnd symbol (arrow or whatever) in the middle of a line, or anywhere other than the LineEnd, is not rational.

That does not mean you can’t draw whatever you want, it means you have to understand what you want to draw, and what the drawing tool that you use is capable of:

  • just draw one line, half the length you need, and put an arrow at the HeadEnd
  • draw a second line, with nothing at the ends
  • set the lines to “Properties/Connections/Allow connections from lines”
  • connect the HeadEnd of the first line to the TailEnd of the second line

Now the two lines are connected, for the most part, they will behave as one line:

  • this connection point can be selected and moved, to be placed precisely
  • it is the mid-point of your two lines (as distinct from the EditPoint of a single line).