https://bugzilla.wikimedia.org/show_bug.cgi?id=63122
Bug ID: 63122
Summary: improve detectTofu algorithm so it can detect
replacement characters in fixed-width glyphs
Product: MediaWiki extensions
Version: unspecified
Hardware: All
OS: All
Status: NEW
Severity: enhancement
Priority: Unprioritized
Component: UniversalLanguageSelector
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected],
[email protected], [email protected],
[email protected], [email protected],
[email protected], [email protected],
[email protected],
[email protected]
Web browser: ---
Mobile Platform: ---
The detectTofu function finds glyphs which are missing from a font (and so are
replaced by a replacement character or "tofu").
The current algorithm works as follows:
1. Measure the rendered width/height of each character in a test string.
2. Compare to a character that is known to be replaced.
3. If each character is the same size (including the replacement), then
conclude that all characters are missing glyphs.
This works very well for many languages. However, it fails for Chinese, because
typically all Han character glyphs in a font are the same size as the
replacement character glyph. Also, there is no such thing as a 'complete Han
font': there are always missing characters.
Therefore, we should implement a more sophisticated approach:
1. Start with the above algorithm for speed.
2. Render a character to an HTML canvas.
3. Compare its bitmap to the bitmap of the replacement character glyph.
This will allow us to detect exactly which characters are missing, regardless
of width/height.
--
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l