On 11/07/19 06:08, Paul B. Gallagher wrote:
Check out the umlauts here:
<https://www.nytimes.com/2019/07/10/science/skull-neanderthal-human-europe-greece.html>
For some reason, SM displays them to the right of the target letter,
although the source code displays them correctly. It's because the
author has used "u" plus the combining umlaut rather than the single
letter "ü," thus: "ü."
Interesting article, anyway.
The answer is in this Bugzilla item.
"the combining ... character [is not supported in the selected font]; so
it falls back to a different font ..., and positioning of diacritics
does not generally work across font-change boundaries."
<https://bugzilla.mozilla.org/user_profile?user_id=329583>
This happens in this case because of an apparently unreported bug in SM.
In more detail, I tested, with SM 2.49.5 build 20190507045107, LXLE
(Lubuntu) 16.04, 32-bit, no JS, the rendering of this paragraph:
<p class="css-exrw3m evys1bk0">“It’s a very good question, and I have no
idea,” said Dr. Harvati, a paleoanthropologist at the University of
Tübingen in Germany. “I mean, this is the first time that we’ve found
them.”</p>
Using the document styles, "Tübingen" appears as "Tu¨bingen". The font
style specified by NYT for this is "nyt-imperial,georgia,'times new
roman',times,serif". The font used is matched to the 'times new roman'
font name even though Georgia is installed: it *is* used if the name is
"Georgia" rather than "georgia" -- perhaps "times new roman" is handled
specially for historical reasons -- but this is a bug against "CSS Fonts
Module Level 3 W3C Recommendation 20 September 2018"
<https://www.w3.org/TR/css-fonts-3/#font-matching-algorithm>.
Using the browser default styles, it's "Tübingen". This corresponds to a
browser font-family "serif", which on this platform seems to be the font
"Bitstream Vera Serif".
"Times New Roman" v 2.82, "a valuable asset of Monotype", is one of a
small number of system serif fonts installed in this platform that
display the u and combining umlaut separately; most display ü correctly
(tested in Font Manager).
After enabling @font-face and JS for nytimes.com and static01.nyt.com, I
see what must be the nyt-imperial font
<https://www.typesample.com/samples/nyt_8iqqn_2x> offered by NYT (oh,
it's almost indistinguishable from Georgia), but it also fails to
combine "u¨". Apparently NYT uses Imperial in the print edition but has
had Georgia for the web since 2006 (absent @font-face).
Lesson 0
SM 2.49.5 (and presumably earlier versions) is at least 6 years behind
the current CSS font matching specification.
Lesson 1
If you want to avoid this display, at least check the default fonts used
by the browser and set the defaults to fonts that display u and
combining umlaut properly (other combinations may also apply). Eg, don't
have Times New Roman 2.82 as the default serif font.
Lesson 2
You won't lose much by disabling site font styles globally: clear
Edit>Preferences>Appearance>Fonts>Allow documents to use other fonts.
Lesson 3
You can prevent sites sending you their own fonts by blocking @font-face
with (eg) NoScript.
Lesson 4
You can overrule unsatisfactory site font styles with user CSS, directly
or by means of an extension like Stylish. This user CSS might fix the
display if (eg) Georgia is installed:
.css-exrw3m { font-family: Georgia,serif; }
Or a user JS could edit font-family styles to remove 'times new roman'
and/or change "georgia" to "Georgia".
/df
--
London
UK
_______________________________________________
support-seamonkey mailing list
[email protected]
https://lists.mozilla.org/listinfo/support-seamonkey