Using \override Slur.positions
it is possible to set the vertical position of the start and end points of a slur to absolute values (or rather, forcing LilyPond's slur algorithm to consider these values as desired). In many cases, this means a lot of trial and error until good values are found. You probably have tried the \offset
command next just to find out that it doesn't work for slurs, emitting a warning instead.
The code in this snippet allows you to tweak the vertical start and end positions by specifying relative changes, similar to \offset
.
Syntax: \offsetPositions #'(dy1 . dy2)