Certaines polices Unicode ne fonctionnent pas sous Windows 7 / Firefox


16

Je souhaite afficher les hiéroglyphes égyptiens:

𓀀 𓀁 𓀂 𓀃 𓀄 𓀅 𓀆 𓀇 𓀈 𓀉 𓀊 𓀋 𓀌 𓀍 𓀎 𓀏 𓀐 𓀑 𓀒 𓀓 𓀔 𓀕 𓀖 𓀗 𓀘 𓀙 𓀚 𓀛 𓀜 𓀝 𓀞 𓀟 𓀠 𓀡 𓀢 𓀣

Ils font partie d'Unicode 5.2.

TL; DR:

  • L'installation des polices Noto dans une machine virtuelle Windows 7 ou Windows 8 propre fonctionne comme vous vous en doutez et j'ai des hiéroglyphes dans Firefox.
  • L'installation des polices Noto sur ma machine locale ne fonctionne pas. Aucun programme ne me montre de hiéroglyphes à moins que j'appelle spécifiquement la police.
  • J'ai essayé diverses solutions de contournement telles que les noms de fichiers sur le bureau pour déclencher IE en utilisant ces caractères, pas de chance.

Détails:

J'ai essayé d'installer la police Aegyptus , ainsi que les polices Google Noto .

Le résultat est que les nouvelles polices apparaissent sur mon système (je peux les utiliser pour formater du texte dans MS Word, par exemple) et si je me réfère explicitement à elles dans une page Web (c'est-à-dire en définissant la famille de polices sur 'aegyptus') ils apparaissent correctement:

entrez la description de l'image ici

Le problème est que je ne peux pas contrôler les polices utilisées par une page Web et je crois comprendre que Windows ou mon navigateur devraient détecter automatiquement que les glyphes ne sont pas dans la police et trouver une correspondance appropriée.

J'ai testé cela sur une machine virtuelle propre (la machine virtuelle Windows 7 / IE 9 Virtual Box de modern.ie) et j'ai constaté que l'installation de noto et de Firefox permet aux polices de fonctionner correctement. Après avoir installé une police, les glyphes apparaissent automatiquement dans Firefox sans que je doive spécifier la police. Mais pour ma machine locale de métal nu, cela ne fonctionne pas.

J'ai vérifié que mon Windows 7 a soudainement cessé d'afficher les symboles Unicode, ce qui suggère un problème avec Chrome, et recommande de placer un fichier sur le bureau avec des caractères qui utilisent les points de code Unicode dont vous avez besoin. Cependant, j'ai essayé de mettre à la fois un fichier avec un caractère chinois et un fichier avec un caractère égyptien dans les noms de fichiers, et cela n'a pas aidé. Remarque: à aucun moment aucun de mes caractères chinois n'a cessé de fonctionner. Ce ne sont que les autres plages de caractères qui ne fonctionnent pas.

Dans tous les cas, j'ai essayé de désactiver tous les programmes de démarrage que je peux trouver pour voir si l'un d'entre eux n'essuyait pas cela, mais rien n'a aidé. J'ai même désinstallé Chrome, Adobe Acrobat et plusieurs autres candidats possibles, en vain.

MISE À JOUR

J'ai découvert une solution de contournement qui aide mais j'aimerais une meilleure solution. Si je désactive «Utiliser l'accélération matérielle lorsqu'elle est disponible» et redémarre Firefox, mes polices apparaissent. J'ai vérifié que j'ai les derniers pilotes pour ma carte graphique (Intel HD4000) et cela ne semble pas aider. Ce rapport de bogue chez Mozilla suggère qu'il y a des problèmes de rendu de police sur certaines cartes, mais la solution de contournement indiquée ne m'affecte pas, et en tout cas mes polices semblent bonnes, mais la substitution de glyphe ne se produit pas.


Les autres polices personnalisées fonctionnent-elles?
bhathiya-perera

@BhathiyaPerera Je vois le même problème avec, par exemple, le script Carian . Sur ma machine locale, le texte n'apparaît que si je modifie la page et injecte la famille de polices. Sur ma machine virtuelle, dans Firefox, cela fonctionne bien.
M. Shiny et New 安 宇

Je vous recommande de tester avec 10 nouvelles polices gratuites et de publier également le code associé, puis de signaler la question à déplacer vers stackoverflow si nécessaire.
bhathiya-perera

Je me demande encore si cela s'applique uniquement aux scripts dont les points de code se situent au-dessus du BMP ( n > 0xFFFF), qui comprendraient des choses comme les symboles alphanumériques mathématiques, les emoji de divers symboles et pictogrammes, la plupart des émoticônes, ainsi que le gothique, le désert, Carian, hiéroglyphes égyptiens et scripts cunéiformes tous dans le SMP, ainsi que les divers idéogrammes CJK dans le SIP.
tchrist

@BhathiyaPerera Il ne s'agit pas de code. Il s'agit de la substitution automatique de polices. Lorsque je charge cette question SU sur mon poste de travail, je vois des petites cases où je devrais voir des hiéroglyphes. Lorsque je charge cette même page sur ma machine virtuelle dans le même navigateur, je vois des hiéroglyphes. Mais je peux dire que la police est installée sur mon poste de travail car je peux utiliser Firebug pour modifier le DOM de cette page et définir la famille de polices; alors la police apparaît.
M. Shiny et New 安 宇

Réponses:


1

mon navigateur devrait détecter automatiquement que les glyphes ne sont pas dans la police et trouver une correspondance appropriée

Malheureusement, cette hypothèse sur OP n'est vraie que pour Firefox. Firefox utilise fontconfig qui effectue la substitution de polices par glyphe; la police appropriée est utilisée si elle contient le caractère concerné.

En comparaison entre IE et Chrome, IE est légèrement meilleur en ce qu'il fournit une solution de repli plus détaillée par script et fournit des paramètres d'interface utilisateur pour les polices, bien que cela ne couvre pas les hiéroglyphes égyptiens. Le mécanisme de remplacement des polices pour Uniscribe / DirectWrite, les composants principalement pour la mise en page de texte complexe, est décrit dans cet article MSDN .

Bien que Chrome prenne enfin en charge le remplacement des polices par script en 2012, les utilisateurs doivent installer une extension supplémentaire pour les modifier - une de ces extensions est Advanced Font Settings . Cependant, il n'est pas tout à fait possible de dire à tous les visiteurs du site utilisant Chrome d'installer l'extension.

À propos du problème d'origine, on pourrait vouloir enquêter sur la direction du mécanisme de remplacement des polices, probablement une autre police qui se comporte mal remplace la police Noto, prétendant prendre en charge ces glyphes alors qu'en fait ce n'est pas le cas. Une méthode fastidieuse consiste à supprimer les polices supplémentaires sur le système et à les rajouter une par une jusqu'à ce que le coupable soit trouvé.


Soupir. Je m'étais demandé à quel point une police mentait sur la prise en charge de ces glyphes.
M. Shiny et New 安 宇

Malheureusement, l'approche Chrome utilisant ce plugin ne fonctionne pas non plus. D'après sa description Chrome-store: Chrome utilisera les paramètres de police contrôlés par cette extension lorsque LES DEUX éléments suivants sont vrais: 1) La page Web a déclaré la langue du contenu (par exemple, en utilisant l'attribut HTML lang); et 2) La page Web n'a pas spécifié de police à utiliser.
M. Shiny et New 安 宇

J'ai «fastidieusement» supprimé toutes les polices introuvables sur ma machine virtuelle de référence et le problème persiste dans Firefox.
M. Shiny et New 安 宇

C'est étrange. Il y a maintenant 2 autres possibilités auxquelles je peux penser: (1) si les paramètres de langue sur VM et votre machine de test sont identiques; (2) si la font-familyliste dans Firefox (à partir de l'inspection des éléments) est identique dans les deux environnements. Actuellement je n'ai aucune idée si ces 2 points ne montrent aucun signe de suspicion.
Abel Cheung


-1

J'ai eu le même problème avec un logiciel qui avait le caractère de ma langue dans ses fenêtres, il n'affichait pas le vrai caractère, puis j'ai changé le paramètre dans le panneau de configuration -> région et langue -> administratif -> Langue pour non-Unicode, et définissez-le pour ma langue.


1
Les polices en question font strictement partie d'Unicode. Le paramètre non-Unicode n'entre pas en jeu ici. Quoi qu'il en soit, personne n'a "Hiéroglyphes égyptiens" comme langage informatique.
M. Shiny et New 安 宇

@ Mr.ShinyandNew 安 宇: 𓀇 𓀈 𓀉 𓀊 𓀋 𓀌 𓀍 𓀎 𓀏 𓀐 𓀑 𓀒 𓀓 𓀔 𓀕 𓀖 𓀗 𓀘 𓀙 𓀚 𓀛 𓀜 !!
Cerberus

-3

Si aucune police installée ne correspond aux caractères, elle ne peut pas être affichée; Windows ne télécharge pas les polices automatiquement!

Vous pouvez intégrer l'utilisation @font-face( polices Web ) dans le CSS de votre page Web. Ajoutez quelque chose comme ça à votre CSS pour définir la police Web:

@font-face {
    font-family: 'NotoSansEgyptianHieroglyphs';
    src: url('http://myserver/example/NotoSansEgyptianHieroglyphs-Regular.ttf');
}

Ensuite, appliquez un style à l'élément avec les hiéroglyphes dans votre CSS:

.hieroglyphics {font-family: NotoSansEgyptianHieroglyphs;}

2
J'ai installé des polices. Et j'ai vérifié sur deux machines virtuelles Windows différentes que l'installation des polices est normalement suffisante pour les faire fonctionner. Quelque chose est différent sur ma machine mais je ne sais pas où chercher pour la trouver.
M. Shiny et New 安 宇
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.