[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#19993: 25.0.50; Unicode fonts defective on Windows
From: |
Eli Zaretskii |
Subject: |
bug#19993: 25.0.50; Unicode fonts defective on Windows |
Date: |
Sat, 07 Mar 2015 10:14:16 +0200 |
> Date: Fri, 6 Mar 2015 14:08:01 -0800
> From: Ilya Zakharevich <ilya@math.berkeley.edu>
> Cc: 19993@debbugs.gnu.org
>
> > Emacs on Windows needs a font to support the entire range of a script,
> > or else it won't use the font. It finds out which scripts are
> > supported by a font by looking at the fsUsb member of the
> > FONTSIGNATURE structure for each font. See font_supported_scripts,
> > and also font_matches_spec which uses it, for the details. So maybe
> > the fonts you have don't announce in their signature that they support
> > these Unicode ranges. E.g., U+1D49C is in "Mathematical ALphanumeric
> > Symbols", whose subrange bit is 89 -- does Symbola set this bit in its
> > font signature?
>
> This does not make any sense… Before we go to the details of a font
> structure, let’s discuss it semantically.
>
> What can it mean that a font “supports a script”?
>
> Theoretically, it may mean that
> • it “knows” all the characters in the script, and
> • has enough extra infrastructure to shape these characters
> into a correct glyphic representation.
>
> I may see that the second part may be described by one bit per
> script. But what about the first one? A repertoir of a script
> changes every year (sometimes several times per year). How can this
> be encapsulated into a bit?
All I know about this is what the MSDN documentation says:
FONTSIGNATURE structure
Contains information identifying the code pages and Unicode subranges
for which a given font provides glyphs.
[...]
Members
fsUsb
A 128-bit Unicode subset bitfield (USB) identifying up to 126
Unicode subranges. Each bit, except the two most significant bits,
represents a single subrange. The most significant bit is always 1
and identifies the bitfield as a font signature; the second most
significant bit is reserved and must be 0. Unicode subranges are
numbered in accordance with the ISO 10646 standard. For more
information, see Unicode Subset Bitfields.
- bug#19993: 25.0.50; Unicode fonts defective on Windows, (continued)
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/11
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Ilya Zakharevich, 2015/03/11
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/11
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/12
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Ilya Zakharevich, 2015/03/12
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/13
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Ilya Zakharevich, 2015/03/13
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/13
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/08
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Ilya Zakharevich, 2015/03/06
- bug#19993: 25.0.50; Unicode fonts defective on Windows,
Eli Zaretskii <=
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Ilya Zakharevich, 2015/03/08
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/08
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Ilya Zakharevich, 2015/03/08
- bug#19993: 25.0.50; Unicode fonts defective on Windows, Eli Zaretskii, 2015/03/08