2024-04-19 00:46 BST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0002120NetSurfLayoutpublic2017-10-16 23:40
ReporterAnthony J. Bentley 
Assigned ToMichael Drake 
SeveritymajorReproducibilityalways 
StatusclosedResolutionfixed 
PlatformPowerPCOSOpenBSDOS Version5.5
Product Version3.1 
Target Version3.7Fixed in Version3.7 
Summary0002120: GTK font rendering broken on non-96dpi desktops
DescriptionSpacing between words seems to be incorrect in NetSurf 3.1 on OpenBSD/macppc. I am not sure of the cause. The effect is clear in the attached screenshot.

Not sure where the problem lies. I have only tested on OpenBSD/amd64 and OpenBSD/i386 (where it doesn't happen), and on OpenBSD/macppc (where I see the effect). Have not tested on other OpenBSD platforms. I'm curious if the effect happens on PowerPC machines not running OpenBSD.
TagsNo tags attached.
Fixed in CI build #
Reported in CI build #
URL of problem page
Attached Files

-Relationships
has duplicate 0002325closedMichael Drake Text overlap each other 
+Relationships

-Notes
Chris Young

~0000326

Chris Young (developer)

I can answer the question "Does this happen on other PPC platforms?" with a "No" (at least for AmigaOS 4.1).

However, I have noticed the same problem after scaling, which persists to some extent when the scale is reset. I've attached the normal and a scaled in screenshot. I've never investigated whether scaling causes such problems on other platforms.
Chris Young

~0000327

Chris Young (developer)

I can reproduce this on i386 GTK after playing with the scaling, leaving that as it is and then moving to this page I'm getting some character overlapping here too. Even worse, when typing in the input box the cursor is 2 characters in front of what I'm typing when I get to the right-hand side of the input box, which I guess is related (at the left it lines up correctly).
Michael Drake

~0000405

Michael Drake (administrator)

Scaling is a different issue; we currently expect text size to increase linearly with scale, which is wrong for font renderers that try to minimise blurriness by bodging glyph shapes to fit the pixel grid.

I don't know what the original issue is. Check that scale is 1:1, and experiment with the DPI setting.
Anthony J. Bentley

~0000430

Anthony J. Bentley (reporter)

Happens with scale 1:1 (and other scales). Will try fiddling with the DPI... based on the GTK widgets that definitely differs from my amd64 setup.
Daniel Silverstone

~0000433

Daniel Silverstone (administrator)

This almost looks like the font width calculator is not producing the same width as when we actually render.
Anthony J. Bentley

~0000446

Anthony J. Bentley (reporter)

Last edited: 2014-09-06 06:29

View 3 revisions

Confirmed to be a DPI problem: the bad screenshot had a DPI of 86 according to xdpyinfo, while the good screenshot had a DPI of 96. Manually setting the dpi to 86 on the "good" machine results in an identical spacing problem.

Looks like PowerPC was a red herring.

Michael Drake

~0000475

Michael Drake (administrator)

Last edited: 2014-09-06 13:50

View 2 revisions

11:57 <@tlsa> the problem is:
11:58 <@tlsa> nsfont_paint creates a PangoLayout from the current_cr
11:58 <@tlsa> which only exists durng redraw
11:59 <@tlsa> the font measuring stuff only calls pango_layout_new
11:59 <@tlsa> to get a PangoLayout
11:59 <@tlsa> and that knows nothing about the DPI
12:01 <@tlsa>     context = gdk_pango_context_get();
12:01 <@tlsa>     layout = pango_layout_new(context);
12:01 <@tlsa> that's for measuring
12:01 <@tlsa>     layout = pango_cairo_create_layout(current_cr);
12:01 <@tlsa> that's for painting


Michael Drake

~0000476

Michael Drake (administrator)

Updated title, to reflect the bug.
Michael Drake

~0001536

Michael Drake (administrator)

Fixed by: http://source.netsurf-browser.org/netsurf.git/commit/?id=90100bbd45be8e3bc45f258a32a24f433cadbd70
Vincent Sanders

~0001668

Vincent Sanders (administrator)

Thankyou for your report, this has been resolved in the 3.7 release
+Notes

-Issue History
Date Modified Username Field Change
2014-05-10 21:38 Anthony J. Bentley New Issue
2014-05-10 21:38 Anthony J. Bentley File Added: powerpc.png
2014-05-10 21:39 Anthony J. Bentley File Added: amd64.png
2014-05-11 15:26 Chris Young Note Added: 0000326
2014-05-11 15:27 Chris Young File Added: amiga.png
2014-05-11 15:27 Chris Young File Added: amiga_scaled.png
2014-05-11 16:02 Chris Young Note Added: 0000327
2014-05-11 16:29 Vincent Sanders Status new => confirmed
2014-07-17 07:17 Michael Drake Note Added: 0000405
2014-08-01 01:45 Anthony J. Bentley Note Added: 0000430
2014-08-03 14:21 Daniel Silverstone Note Added: 0000433
2014-08-08 08:01 Anthony J. Bentley Note Added: 0000446
2014-08-08 08:03 Anthony J. Bentley Note Edited: 0000446 View Revisions
2014-09-06 06:29 Anthony J. Bentley Note Edited: 0000446 View Revisions
2014-09-06 13:49 Michael Drake Note Added: 0000475
2014-09-06 13:50 Michael Drake Note Edited: 0000475 View Revisions
2014-09-06 13:54 Michael Drake Note Added: 0000476
2014-09-06 13:54 Michael Drake Summary Strange in-text spacing on OpenBSD/PowerPC => GTK font rendering broken on non-96dpi desktops
2015-06-20 14:57 Michael Drake Relationship added has duplicate 0002325
2017-04-11 16:41 Michael Drake Note Added: 0001536
2017-04-11 16:41 Michael Drake Assigned To => Michael Drake
2017-04-11 16:41 Michael Drake Status confirmed => resolved
2017-04-11 16:41 Michael Drake Resolution open => fixed
2017-04-11 16:41 Michael Drake Fixed in Version => 3.7
2017-04-11 16:41 Michael Drake Target Version => 3.7
2017-10-16 23:40 Vincent Sanders Status resolved => closed
2017-10-16 23:40 Vincent Sanders Note Added: 0001668
+Issue History