Opened 6 years ago

Closed 7 months ago

Last modified 7 months ago

#55626 closed defect (wontfix)

freetype 2.8x : restore line height as it was in 2.7.1 and earlier

Reported by: RJVB (René Bertin) Owned by: ryandesign (Ryan Carsten Schmidt)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc:
Port: freetype

Description

Freetype 2.8 introduced a fix for an old regression I never even noticed but with a very noticeable side-effect: it causes an almost 10% reduction in the number of lines that will be displayed in editors, terminals, etc. (e.g. 70 instead of 76 using Ubuntu Mono 12pt). This difference can be observed by overlaying screenshots of applications using FT 2.7.1 and 2.8/2.8.1 in semi-transparant mode; individual lines overlap perfectly but not more than 1 at a time.

I found a fix online: https://bbs.archlinux.org/viewtopic.php?pid=1717280#p1717280 and prepared the attached patch that applies to both 2.8 and 2.8.1 . This patch clearly affects almost exclusively the vertical (y) metrics and indeed I notice no other changes.

Vertical screen space is at a much more important premium than horizontal space so I would suggest providing this "legacy" mode via a build variant.

Attachments (2)

patch-revert-lineheight.diff (3.3 KB) - added by RJVB (René Bertin) 6 years ago.
patch-revert-lineheight.2.diff (3.4 KB) - added by RJVB (René Bertin) 6 years ago.

Download all attachments as: .zip

Change History (7)

Changed 6 years ago by RJVB (René Bertin)

comment:1 Changed 6 years ago by mf2k (Frank Schima)

Cc: ryandesign removed
Owner: set to ryandesign
Status: newassigned

comment:2 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)

I'm not delighted about second-guessing the freetype developers about this.

comment:3 Changed 6 years ago by RJVB (René Bertin)

And I am not at all delighted about them forcing form over function. If you read the exchanges, they fixed something they considered broken (since a very long time) on theoretical grounds. They do provide an alternative to revert to the old line-height but the instructions aren't clear and seem directed at software using FreeType.

In addition, line spacing was nearly identical to line-spacing in CoreText, in Freetype v2.7.1 and earlier (and 2.8+ with the revert patch). This can be observed quite easily in simple Qt5 applications displaying text (say with QTextBrowser), by starting the application with or without the -platform cocoa:fontengine=freetype commandline option.

Changed 6 years ago by RJVB (René Bertin)

comment:4 Changed 7 months ago by ryandesign (Ryan Carsten Schmidt)

Resolution: wontfix
Status: assignedclosed

I'll close this at this point since it's not for us to decide how freetype should behave. Take it up with the developers of freetype if you still have concerns about this.

comment:5 in reply to:  4 Changed 7 months ago by RJVB (René Bertin)

Replying to ryandesign:

... it's not for us to decide how XXX should behave.

Sounds like MP could be simplified a lot by yanking all patching features then!

(You've been drinking too much Apple koolaid. It is definitely up to me to decide how I want software to behave on my systems.)

Note: See TracTickets for help on using tickets.