On 11/02/2012 02:03 PM, Colomban Wendling wrote:
Le 02/11/2012 15:49, Roger Booth a écrit :
On 11/02/2012 06:59 AM, Colomban Wendling wrote:
Le 02/11/2012 01:12, Roger Booth a écrit :
I found a new problem just now. I changed the font size from 10 to 12.
Text that is tab-aligned on the screen, and tab-aligned in Print Preview
when the font size is 10 is no longer tab-aligned in Print Preview when
the font size is 12.
I'm unable to reproduce this, could you provide a small sample showing
the issue?  Though this sounds like a Scintilla issue, I doubt anything
we can do could change that.
Attached is an example. I see a problem in Print Preview when I change
to either font size 12 or font size 8.
OK, gotcha (after a looong and boring dig into Scintilla code, beuah).
Actually Scintilla doesn't setup its Pango layouts for the actual target
Cairo surface but always for the widget's one, so some of the
measurements were done using a layout setup for the screen, thus the
sizing problem with the cairo_scale()s.  Attached patch should (and does
here) fix the issue
(0004-Scintilla-properly-update-the-Pango-contexts-for-the.patch).

Additionally it made me see that the scaling was inaccurate because
Scintilla don't use the default Pango scale but the scale for the screen
(which is correct), which changes depending on the screen's DPI.

I attach all patches.  They are based upon the printing-with-scintilla
branch but should apply cleanly on master.

Regards,
Colomban
Well, I've totally blown my printer ink budget for the month :-) . But these patches look great. And I like that the new code prints longer lines without wrapping. I'd definitely give up a few lines per page in trade for longer lines w/o wrapping.

As for the vertical line thing, sorry I kept harping on that. Until last turn-around, I was only testing page one, and failed to realize it wasn't that the line height calc was wrong, instead you just always draw to just above the page number. So I have an easy (personal) fix. I'll just comment the line-drawing code in my version. I tried it, and I'm happy without the line. So thats the last problem I know of in Geany's code.

I'm willing to work on the Scintilla code base to develop a permanent vertical-line-drawing solution. But I've been a Windows programmer all my career until a year ago, and since then its like drinking from a firehose. I've destroyed my Linux installation twice, having to reinstall from scratch (fortunately I put home on a separate partition). And I've since somehow sort of broken the latest install; it won't automount. That's actually forced me to learn about dmesg and pmount. Anyway, beyond that, there's learning GTK+ and the deprecation caused by 3.0, which I note Geany is dealing with. My wife and I just bought Android tablets, so now I have to learn Java. There's more, but maybe you get the idea. Anyway, I'll try to help Scintilla with printing, and I'll try not to be an annoying nooby.



I just registered an account on Gnome Bugzilla. I found an existing bug complaining that the print dialog showed no notice about the correct syntax for printing ranges of pages. I added a request for an error message when the user screws up.

I'll go back through my posts and see if I should submit other bugs to Scintilla or Gnome.

What about patch 4

Scintilla: properly update the Pango contexts for the
 target surface

I assume you will submit it?

Regards
 Roger

_______________________________________________
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel

Reply via email to