Anyway, the good news is that my test doc, page one anyway, does not wrap.
Yeah, at least the font sizing is better.

Hey, that was the major gripe I had with the new implementation. I can easily just comment out the lines in printer.c that draw the vertical line, and I'll be happy. So I appreciate the changes.

Thats not to say I won't continue to work on this to get it perfect. (But not 'tonight').

You've probably already studied the Scintilla source file Editor.cxx, but you only mentioned looking at SciTE's source, so I thought I'd ask. I have taken notes of the calculations Scintilla makes to calculate the width of the line number column. Unfortunately, Scintilla's print function Editor::FormatRange() declares a local variable ViewStyle vsPrint(vs), and all the calculated values are stored there. That's why SSM(SCI_GETMARGINWIDTHN) returns worthless values.

So, I'm guessing you've looked through that code, but in the off chance, that code uses totally different calcs than the old Geany printing code. So I thought I'd mention it. I have notes, again in the off chance.

Thanks!
 Roger