Bug 228638 - pango does not kern/ligature Type 1 fonts in firefox
pango does not kern/ligature Type 1 fonts in firefox
Status: CLOSED WONTFIX
Product: Fedora
Classification: Fedora
Component: pango (Show other bugs)
8
x86_64 Linux
medium Severity low
: ---
: ---
Assigned To: Behdad Esfahbod
bzcl34nup
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2007-02-13 22:59 EST by Ben Caradoc-Davies
Modified: 2008-04-07 19:09 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-04-06 23:12:00 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Ben Caradoc-Davies 2007-02-13 22:59:34 EST
Description of problem:

Type 1 fonts are not kerned when rendered with pango in firefox. For example, in
the words "World" and "Weather", the bounding boxes of the "W" and the following
glyph do not overlap as they should. Kerning does occur with TrueType fonts.
Type 1 fonts also do not undergo ligature substitution, but TrueType do.

Kerning does occur if I first use fontforge to convert Nimbus Roman No9 L
Regular (a Type 1 font) to TrueType or OpenType and then select the new font,
but the results are truly hideous. (Blame autohinting?) So it seems to be a
choice between nicely rendered Type 1 fonts without kerning or ugly
{True,Open}Type fonts with kerning. Someone with a substantial knowledge of
fontforge may have better results.

Version-Release number of selected component (if applicable):

firefox-1.5.0.9-3.fc6.x86_64
pango-1.14.10-1.fc6.x86_64
libXft-2.1.10-1.1.x86_64

How reproducible:

Steps to Reproduce:
1. Start Firefox with pango enabled. Disable "allow pages to choose their own
fonts".
2. View a web page with obvious kernable text, such as http://news.bbc.co.uk ,
and view words such as "World" or "Weather".
3. Switch between "DejaVu GCL Serif" and one of {"Nimbus Roman No9 L", "Luxi
Serif"} and observe kerning or its lack. Also look for ligatures such as "fi"
and "fl" in words like "field" or "file" or "flight".
  
Actual results:

Truetype fonts such as DejaVu GLC Serif are kerned and undergo ligature
substitution, while Type 1 fonts such as Nimbus Roman No9 L and Luxi Serif are not.

Expected results:

All fonts with kerning tables are kerned. All ligatures are substituted.

Additional info:

I know this is a "bug" in pango, because if firefox is started with
MOZ_DISABLE_PANGO=1 in its environment, then *all* fonts are unkerned, even
DejaVu GLC Serif.

Pango has improved firefox by introducing kerning and ligature substitution for
TrueType fonts. It would be very nice if we could get the same support for Type
1 fonts, or somebody to covert them into {Open,True}Type fonts of satisfactory
quality.
Comment 1 Behdad Esfahbod 2007-02-14 13:23:18 EST
Does the bug happen in gedit too?
Comment 2 Ben Caradoc-Davies 2007-02-14 17:09:05 EST
Yes, the bug occurs in gedit, with no kerning in "Weather" and "World" with Type
1 fonts but kerning with TTF fonts (DejaVu Serif).

Correction: DejaVu Serif is a bad font for seeing the ligatures problem, as it
does not appear to have ligatures for fi or fl. The non-substitution can be seen
by using fontforge to convert Nimbus Roman No9 L to TTF and then comparing the
results. Ligatures are present for the TTF but not the Type 1.

I am using an LCD monitor with subpixel smoothing. Does that change the renderer?
Comment 3 Nicolas Mailhot 2007-07-22 09:31:35 EDT
dejavu ligatures were removed for several months to give pango & firefox devs
the time to fix their bug. The ligatures are back in F7
Comment 4 Liang Zhang 2007-09-28 04:46:53 EDT
The upstream bug:
http://bugzilla.gnome.org/show_bug.cgi?id=481209
Comment 5 Bug Zapper 2008-04-04 02:13:34 EDT
Fedora apologizes that these issues have not been resolved yet. We're
sorry it's taken so long for your bug to be properly triaged and acted
on. We appreciate the time you took to report this issue and want to
make sure no important bugs slip through the cracks.

If you're currently running a version of Fedora Core between 1 and 6,
please note that Fedora no longer maintains these releases. We strongly
encourage you to upgrade to a current Fedora release. In order to
refocus our efforts as a project we are flagging all of the open bugs
for releases which are no longer maintained and closing them.
http://fedoraproject.org/wiki/LifeCycle/EOL

If this bug is still open against Fedora Core 1 through 6, thirty days
from now, it will be closed 'WONTFIX'. If you can reporduce this bug in
the latest Fedora version, please change to the respective version. If
you are unable to do this, please add a comment to this bug requesting
the change.

Thanks for your help, and we apologize again that we haven't handled
these issues to this point.

The process we are following is outlined here:
http://fedoraproject.org/wiki/BugZappers/F9CleanUp

We will be following the process here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping to ensure this
doesn't happen again.

And if you'd like to join the bug triage team to help make things
better, check out http://fedoraproject.org/wiki/BugZappers
Comment 6 Ben Caradoc-Davies 2008-04-04 20:30:28 EDT
This bug is still present in firefox-2.0.0.13-1.fc8.x86_64.

For example, TeX Gyre Termes (TTF), a derivative of URW Nimbus Roman No9 L, is
kerned, while URW Nimbus Roman No9 L (Type 1) is not kerned.
Comment 7 Behdad Esfahbod 2008-04-06 23:12:00 EDT
Yes, Pango doesn't ligate Type1 fonts.  Not going to be fixed ever.  Just use
OpenType fonts instead.
Comment 8 Ben Caradoc-Davies 2008-04-07 19:09:23 EDT
OK. Since this bug was reported, TeX Gyre have made many core fonts available as
good quality TTF, mitigating the problem.

The non-ligating of Type 1 fonts could be considered a feature, because there is
no way to turn it off for TTF/OTF in some applications (i.e. Eclipse). For
example, if a TTF/OTF version of Courier or DejaVu Sans Mono is used in Eclipse,
ligatures are honoured, and source code "file =" has ligation applied to the
"fi", converting it to a single symbol. This is Not What The User Wanted. The
workaround is to select the Type 1 version (e.g. Bitstream Vera Sans Mono).

Note You need to log in before you can comment on or make changes to this bug.