Closed Bug 450151 Opened 16 years ago Closed 16 years ago

Thunderbird does not form ligatures in fonts under 20 pixels

Categories

(Thunderbird :: Preferences, defect)

x86
All
defect
Not set
major

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 3.0b1

People

(Reporter: ahangama, Assigned: philor)

Details

Attachments

(2 files)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1 Build Identifier: version 3.0b1pre Firefox and Thunderbird do not support ligature formation for font sizes below the size 20 pixels. It seems as if this restriction is made only to Simple scripts as Complex scripts such as Indic and Arabic do not seem to have this difficulty. Because of this, when you use a special orthographic font that depends on ligatures for special contexts, you are forced to use font sizes 20 pixels and above. Web pages could overcome this problem by using the CSS 'text rendering' directive. However, though you could use the same trick with Thunderbird by editing the EditorOveride.css file, it only helps when writing messages. When reading, you need to enlarge the text size. There are many orthographic fonts being developed for minority communities that completely depend on the proper functioning of the fonts in their messages. Please fix this bug for equity. Thanks. Reproducible: Always Steps to Reproduce: 1. Start a new message in Shredder, the Nightly build of Thunderbird in Windows 2. Select Calibri as your font and leave the font at the default size 3. Type the words, 'affluent difficult buffer' 4. Select the words you typed 5. Watch the combinations 'ffl' 'ffi' and 'ff' closely and enlarge the font size 6. Notice the ligatures form with the above combinations gluing together. Actual Results: ffl, ffi and ff formed into single-piece ligatures when the size of the font became bigger than 20 pixels. Expected Results: We expect the ligatures to form at every size, not only for larger sizes. The software should have followed the advice of Open Type standard and left the ligature formation at the default setting, which means 'on' at all times. The Open Type standard at the following page says that 'liga' feature should be kept turned 'on': http://www.microsoft.com/typography/otspec/features_ko.htm#liga Note in particular: UI suggestion: This feature serves a critical function in some contexts, and should be active by default.
You could take a look at browser.display.auto_quality_min_font_size ( http://kb.mozillazine.org/Browser.display.auto_quality_min_font_size ) The default was intentionally set to 20.
The reason for the default of 20 is related to a (nominal) performance hit, but it's more apt in the context of Firefox, not so much Thunderbird. Discussion is ongoing as to whether it might be better to enable ligatures on all text (by setting the value to 0). Watch this space!
Status: UNCONFIRMED → NEW
Ever confirmed: true
This issue is very important for my group, Open Source Pali Project. We are developing a web site that would allow viewing of original Buddhist text, that was written down in 98 BC, in multiple scripts including Latin. Latin behaves as the base. Sinhala, Thai etc would be the smartfonts clothing the Latin that would make the same underlying Latin text come to life in different complex scripts. This would allow people of different countries who know Pali but are somewhat challenged in English to communicate. See this web page and notice the text on the graphic transform in few minutes to Latin from to Classic Sinhala. (The text is Sinhala and Sanskrit mixed): www.lovatasinhala.com/anurapura Your consideration of this matter is gratefully appreciated. May you find peace and become contented. Sumangala
Could I join/observe the discussion? (In reply to comment #2) > The reason for the default of 20 is related to a (nominal) performance hit, but > it's more apt in the context of Firefox, not so much Thunderbird. Discussion is > ongoing as to whether it might be better to enable ligatures on all text (by > setting the value to 0). Watch this space! >
Resolution needed ... desparate call. Channa
why can't I vote for this damn thing?
(In reply to comment #6) > why can't I vote for this damn thing? > We are sorry for causing such a frustration. However, we observe a code of conduct which you would have to agree to if you join Bugzilla. You cannot vote until then. I guess the reason is to limit the group to those who are really serious about matters discussed here: Bugs in Firefox, Thunderbird etc. As the reporter of this bug I much appreciate your desire to vote for it, and hope you'd be generous with your votes (you can contribute any number of votes to this out of 1000 you'd be allocated. Here's how to become a member. Go to: https://bugzilla.mozilla.org On top you will find a row of Menus. One of them says: News Account. You need to click on that and apply to become a member of the community. The server would then send you a message to verify that the email address you gave is actually yours. When you respond to it by clicking on the link that the message provides, you would be admitted as a member. Now you would have a user name (your email address) and a password that you specified. Please write them down. After logging in, search for 'ligatures'. Then look for the bug # 450151 to come here. Then try again to vote. If you know others who are interested in seeing ligature support in Firefox and Mozilla please encourage them to register their support the way you would have done. Many thanks. JC
(In reply to comment #4) > Could I join/observe the discussion? > > (In reply to comment #2) > > The reason for the default of 20 is related to a (nominal) performance hit, but > > it's more apt in the context of Firefox, not so much Thunderbird. Discussion is > > ongoing as to whether it might be better to enable ligatures on all text (by > > setting the value to 0). Watch this space! > > > Hi Chand Could I join in this discussion to see how soon changes could be implemented. channa
(In reply to comment #2) > The reason for the default of 20 is related to a (nominal) performance hit, but > it's more apt in the context of Firefox, not so much Thunderbird. Discussion is > ongoing as to whether it might be better to enable ligatures on all text (by > setting the value to 0). Watch this space! zed, is there an existing FF or core bug on this?
Looks like this has been fixed in nightlies (maybe a bit too liberally -- i'm seeing ligatures in fixed width fonts, which is a different, related bug)
No. It is NOT fixed on nightlies. I just tested it. You can read and write at 20px plus. That's it.
Attached image screenshot (deleted) —
I suspect you'll see it in tomorrow's nightlies, as this is what I'm seeing in a self-made build from this afternoon.
There wasn't any code checked into comm-central which changed the default font size for quality rendering. David, I believe what you saw (on mac only) was bug 446529 which was backed out of mozilla-central today.
David, You are right! The amazing thing is that a font designer made ligatures for a monospace font. Look at f+i. The post of I should join f. The OS or Thunderbird did not make those ligatures. This is an absurdity. The decision to allow or not to allow ligatures whether the font is monospace or proportional is not for the application. The app should faithfully follow the specifications of the standards and the rest should fall in place automatically. The font makers are the culprits, and Mozilla ought not to try to fix their bugs arbitrarily because they would be spoiling the reason why we have standards. Is every font maker to negotiate with Mozilla? The rules about fonts are now quite well defined. The world is at the threshold of supporting all sorts of scripts and languages on the computer. Following standards correctly is the way to go forward. If a font misbehaves, the user will replace it with another one that suits them. Let the marketplace decide, not Mozilla. The font makers have the OpenType standard. They should update their fonts according to its rules porting them to Unicode compliant formats. It’s not hard work, and more importantly, it’s not Mozilla’s job to mess with them: http://www.microsoft.com/typography/specs/default.htm Then there is a way to categorize fonts programmatically by way of a number stored inside the font file. This should help with the next item following: http://www.w3.org/Printing/stevahn.html There are generic font families -- a fallback method when the specified font is missing: http://www.w3.org/TR/REC-CSS2/fonts.html#generic-font-families OpenType categorizes the fonts according to Unicode scripts. Each script has a set of features for all languages that come under it or when the ‘default’ language is specified. The app, in this case, Firefox should allow these features generically for that script. For Latin script, they should simply allow the ‘liga’ feature WITHOUT REGARD to whether they are monospace or proportionate. If a particular language under a script requires an additional feature, Mozilla could allow such special cases via extensions or by building them into the app by following the OpenType specification. it is a simple, straight forward algorithm. The purpose for the monospace and proportionate categorization was to allow straight-edge alignment of text in tables and such during DOS / Windows 3.1 days. That classification is now superseded with font-family categorizing. Monospace fonts still have their utility, but should not be considered a broad category but a special feature of a font like one that emulates typewriter print. If Mozilla wants, they can define monospace font in each OS, such as Courier, just to help user remember it. The categorization should be according to font-families and not monospace / proportionate. For instance, I’d like to be able to select my favorite Fantasy family font. Thanks.
Bug 440441 wonderfully illustrates the need to follow OpenType Standard
I think Thunderbird should set browser.display.auto_quality_min_font_size to 0. We can't do that for Firefox yet, because it would slow down pageload significantly on Linux and Windows, but that shouldn't be a problem for Thunderbird. (Note that that setting is effectively ignored on Mac; Mac always has ligatures, which may explain why some people think this is fixed for them.) Another thing worth noting is that Web authors can use CSS text-rendering:optimizeLegibility to force Firefox 3 to enable ligatures (and kerning and other complex text processing) on all platforms, no matter what the font size. See http://weblogs.mozillazine.org/roc/archives/2007/07/status_3.html
No longer blocks: 440441
(In reply to comment #16) THUNDERBIRD I vote for this 100%. That settles the practical side of the question for me. FIREFOX Although the pageload issue is not a concern for me, because the CSS directive enables ligatures, I'd like to humbly submit that the pageload problem be tested again. The second part of the following page could be displayed with my test font Suriyakumara that has more than 400 ligatures. It is Classic Sinhala created to render Pali transliteration. When you apply that font to this bottom portion of the page, the whole section is practically all ligatures because only under sixty free-standing vowels and consonants remain. Page with Suriyakumara: http://www.americansmartfonts.com/ds/basaperaluma.htm Suriyakumara font: http://www.americansmartfonts.com/ds/Suriyakumara.ttf If you need, I can send more complex text (in Latin) that would generate third generation ligatures common in Pali and Sanskrit. > I think Thunderbird should set browser.display.auto_quality_min_font_size to 0. > We can't do that for Firefox yet, because it would slow down pageload > significantly on Linux and Windows, but that shouldn't be a problem for > Thunderbird. > > (Note that that setting is effectively ignored on Mac; Mac always has > ligatures, which may explain why some people think this is fixed for them.) > > Another thing worth noting is that Web authors can use CSS > text-rendering:optimizeLegibility to force Firefox 3 to enable ligatures (and > kerning and other complex text processing) on all platforms, no matter what the > font size. See > http://weblogs.mozillazine.org/roc/archives/2007/07/status_3.html >
(In reply to comment #16) Robert, I tested this font and it shows great in the sample page, but I had to make the change you suggest manually. Is this going to be resolved soon? Thanks. > I think Thunderbird should set browser.display.auto_quality_min_font_size to 0. > We can't do that for Firefox yet, because it would slow down pageload > significantly on Linux and Windows, but that shouldn't be a problem for > Thunderbird. > > (Note that that setting is effectively ignored on Mac; Mac always has > ligatures, which may explain why some people think this is fixed for them.) > > Another thing worth noting is that Web authors can use CSS > text-rendering:optimizeLegibility to force Firefox 3 to enable ligatures (and > kerning and other complex text processing) on all platforms, no matter what the > font size. See > http://weblogs.mozillazine.org/roc/archives/2007/07/status_3.html >
We aren't going to enable full ligature processing for all font sizes in Firefox on Windows or Linux, if that's what you mean.
(In reply to comment #19) > We aren't going to enable full ligature processing for all font sizes in > Firefox on Windows or Linux, if that's what you mean. > I meant the fix for Thunderbird. Didn't you say that the following setting should be made into zero? set browser.display.auto_quality_min_font_size to 0 That was my question. That way, people less savvy with computers could start using their language in emails (Like the Sinhalese and monks using Pali)
This Bug report could be closed if that setting is lowered to zero. browser.display.auto_quality_min_font_size to 0 I just do not know who has the ability to do that. Some help in that direction is much needed. Anybody?
How am I to know if this is fixed, please? (I edited the settings manually and it says that the item was changed by the user). Is there a way to reset the Configurations manually to its defaults?
I had the same problem today with and I had to change to browser.display.auto_quality_min_font_size to 0 manually. There was absolutely no performance difference. I am not sure why this is set to 20. Please make it to 0 by default. Thank you in advance.
Here is a page that has THOUSANDS of ligatures. http://www.lovatasinhala.com/index.htm The font used is this: http://www.americansmartfonts/download/Suriyakumara.ttf Is there anyone who sees a performance difference?
Component: Message Compose Window → Preferences
QA Contact: message-compose → preferences
Version: unspecified → Trunk
Attached patch Fix (deleted) — Splinter Review
Assignee: nobody → philringnalda
Status: NEW → ASSIGNED
Attachment #341046 - Flags: review?(mkmelin+mozilla)
Attachment #341046 - Attachment is patch: true
Attachment #341046 - Attachment mime type: application/octet-stream → text/plain
Hi, Phil. I am asking this because of my ignorance. Does this mean the bug is fixed, that is, next update would allow ligature formation at all sizes? Thank you ever so much. JC
Comment on attachment 341046 [details] [diff] [review] Fix Let's trust roc:) r=mkmelin
Attachment #341046 - Flags: review?(mkmelin+mozilla) → review+
This bug is fixed! Please close it. JC Bug reporter.
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 3.0b1
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: