I want to scroll the buffer so that the the current line is, say, 300 pixels from the beginning of the window.
Something like this:
. \ . | (300 pixels) . / | <-- (current line)
Note that the buffer may contain figures and different font sizes, so scrolling a fixed number of text lines won't do the trick.