Einige Unicode-Schriftarten funktionieren unter Windows 7 / Firefox nicht


16

Ich möchte ägyptische Hieroglyphen anzeigen:

𓀣 𓀀 𓀁 𓀂 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣 𓀣

Diese sind Teil von Unicode 5.2.

TL; DR:

  • Das Installieren von Noto-Schriftarten in einer sauberen Windows 7- oder Windows 8-VM funktioniert wie erwartet und ich habe Hieroglyphen in Firefox.
  • Das Installieren von Noto-Schriftarten auf meinem lokalen Computer funktioniert nicht. Kein Programm zeigt mir Hierglyphen, es sei denn, ich rufe die Schriftart speziell auf.
  • Ich habe verschiedene Workarounds wie Dateinamen auf dem Desktop ausprobiert, um den IE mit diesen Zeichen auszulösen. Kein Glück.

Einzelheiten:

Ich habe versucht, die Aegyptus-Schriftart sowie die Google Noto- Schriftarten zu installieren .

Das Ergebnis ist, dass die neuen Schriftarten auf meinem System erscheinen (ich kann sie zum Beispiel zum Formatieren von Text in MS Word verwenden) und wenn ich auf einer Webseite explizit darauf verweise (dh indem ich die Schriftfamilie auf 'aegyptus' setze). sie erscheinen richtig:

Bildbeschreibung hier eingeben

Das Problem ist, dass ich nicht steuern kann, welche Schriftarten auf einer Webseite verwendet werden, und Windows oder mein Browser sollten meines Erachtens automatisch erkennen, dass die Glyphen nicht in der Schriftart enthalten sind, und eine entsprechende Übereinstimmung finden.

Ich habe dies auf einer sauberen VM getestet (die Windows 7 / IE 9 Virtual Box VM von modern.ie) und festgestellt, dass die Installation von noto und Firefox es ermöglicht, dass die Schriftarten nur funktionieren. Nach der Installation einer Schriftart werden die Glyphen automatisch in Firefox angezeigt, ohne dass ich die Schriftart angeben muss. Aber für meine lokale Bare-Metal-Maschine funktioniert es nicht.

Ich habe überprüft, ob in Windows 7 plötzlich keine Unicode-Symbole mehr angezeigt werden, was auf ein Problem mit Chrome hindeutet. Außerdem wird empfohlen, eine Datei mit Zeichen, die die von Ihnen benötigten Unicode-Codepunkte verwenden, auf dem Desktop abzulegen. Ich habe jedoch versucht, sowohl eine Datei mit einem chinesischen Zeichen als auch eine Datei mit einem ägyptischen Zeichen in die Dateinamen aufzunehmen, und das hat nichts gebracht. Hinweis: Zu keinem Zeitpunkt haben meine chinesischen Schriftzeichen aufgehört zu funktionieren. Es sind nur die anderen Zeichenbereiche, die nicht funktionieren.

Auf jeden Fall habe ich versucht, jedes Startprogramm zu deaktivieren, um festzustellen, ob eines von ihnen dies nicht durcheinander gebracht hat, aber nichts hat geholfen. Ich habe sogar Chrome, Adobe Acrobat und einige andere mögliche Kandidaten ohne Erfolg deinstalliert.

AKTUALISIEREN

Ich habe eine Abhilfe entdeckt, die hilft, aber ich hätte gerne eine bessere Lösung. Wenn ich "Hardwarebeschleunigung verwenden, wenn verfügbar" deaktiviere und Firefox neu starte, werden meine Schriftarten angezeigt. Ich habe überprüft, ob ich die neuesten Treiber für meine Grafikkarte (Intel HD4000) habe, und das scheint nicht zu helfen. Dieser Fehlerbericht bei Mozilla deutet darauf hin, dass es auf bestimmten Karten Probleme mit der Schriftwiedergabe gibt, aber die angegebene Problemumgehung wirkt sich nicht auf mich aus, und auf jeden Fall sehen meine Schriften gut aus, aber die Glyphenersetzung findet nicht statt.


Funktionieren andere benutzerdefinierte Schriftarten?
Bhathiya-Perera

@BhathiyaPerera Ich sehe das gleiche Problem mit zB der Carian-Schrift . Auf meinem lokalen Computer wird der Text nur angezeigt, wenn ich die Seite bearbeite und die Schriftfamilie einfüge. Auf meiner VM in Firefox funktioniert es einwandfrei.
Mr. Shiny und New 安 安

Ich empfehle, dass Sie mit etwa 10 kostenlosen neuen Schriftarten testen und auch den zugehörigen Code posten und dann die Frage markieren, die bei Bedarf in den Stapelüberlauf verschoben werden soll.
Bhathiya-Perera

Ich frage mich immer noch, ob dies nur für Skripte gilt, deren Codepunkte über dem BMP ( n > 0xFFFF) liegen, die Dinge wie mathematische alphanumerische Symbole, das Emoji verschiedener Symbole und Piktogramme, die meisten Emoticons sowie die Gothic, Desert, Karische, ägyptische Hieroglyphen- und Keilschrift-Skripte, alle im SMP sowie die verschiedenen CJK-Ideogramme im SIP.
Tchrist

@BhathiyaPerera Hier geht es nicht um Code. Hier geht es um die automatische Schriftersetzung. Wenn ich diese SU-Frage auf meine Workstation lade, werden kleine Kästchen angezeigt, in denen Hieroglyphen angezeigt werden sollen. Wenn ich dieselbe Seite im selben Browser auf meine VM lade, werden Hieroglyphen angezeigt. Ich kann jedoch feststellen, dass die Schriftart auf meiner Workstation installiert ist, da ich Firebug verwenden kann, um das DOM dieser Seite zu ändern und die Schriftartfamilie festzulegen. dann erscheint die Schrift.
Mr. Shiny und New 安 安

Antworten:


1

Mein Browser sollte automatisch erkennen, dass die Glyphen nicht in der Schriftart enthalten sind, und eine entsprechende Übereinstimmung finden

Leider gilt diese Annahme für OP nur für Firefox. Firefox verwendet fontconfig, um Schriften nach Glyphen zu ersetzen. Die entsprechende Schriftart wird verwendet, wenn sie betroffene Zeichen enthält.

Im Vergleich zwischen IE und Chrome ist IE insofern etwas besser, als es einen umfangreicheren Fallback auf Skriptbasis und Benutzerschnittstelleneinstellungen für Schriftarten bietet, obwohl dies nicht für ägyptische Hieroglyphen gilt. In diesem MSDN-Artikel wird der Fallback-Mechanismus für Schriftarten für Uniscribe / DirectWrite beschrieben, die hauptsächlich für das komplexe Textlayout verwendet werden .

Chrome unterstützt ab 2012 zwar auch das Fallback für Skript-Schriften , die Nutzer müssen jedoch zusätzliche Erweiterungen installieren, um diese zu optimieren. Eine dieser Erweiterungen sind die erweiterten Schrifteinstellungen . Es ist jedoch nicht möglich, allen Website-Besuchern mit Chrome mitzuteilen, dass sie eine Erweiterung installieren möchten.

In Bezug auf das ursprüngliche Problem kann es sinnvoll sein, den Fallback-Mechanismus für Schriftarten zu untersuchen. Wahrscheinlich überschreibt eine andere schlechte Schrift die Noto-Schrift und behauptet, diese Glyphen zu unterstützen, obwohl dies nicht der Fall ist. Eine mühsame Methode besteht darin, zusätzliche Schriftarten im System zu entfernen und sie nacheinander neu hinzuzufügen, bis der Schuldige gefunden ist.


Seufzer. Ich hatte über die Möglichkeit nachgedacht, dass eine Schrift über die Unterstützung dieser Glyphen lügt.
Mr. Shiny und New 安 安

Leider funktioniert der Chrome-Ansatz mit diesem Plugin auch nicht. Aus der Chrome-Store-Beschreibung: Chrome verwendet die von dieser Erweiterung gesteuerten Schriftarteinstellungen, wenn BEIDE der folgenden Bedingungen zutreffen: 1) Die Webseite hat die Sprache des Inhalts deklariert (z. B. mithilfe des HTML-Lang-Attributs). und 2) Auf der Webseite wurde keine zu verwendende Schriftart angegeben.
Mr. Shiny und New 安 安

Ich habe "mühsam" jede Schriftart gelöscht, die nicht auf meiner Referenz-VM gefunden wurde, und das Problem besteht in Firefox weiterhin.
Mr. Shiny und New 安 安

Das ist seltsam. Jetzt gibt es zwei weitere Möglichkeiten, die mir in den Sinn kommen: (1) ob die Spracheinstellungen auf VM und Ihrem Testcomputer identisch sind; (2) Ist die font-familyListe in Firefox (aus der Elementprüfung) in beiden Umgebungen identisch? Aktuell habe ich keine Ahnung, ob diese 2 Punkte kein Anzeichen von Verdacht zeigen.
Abel Cheung


-1

Ich hatte das gleiche Problem mit Software, die Zeichen meiner Sprache in ihren Fenstern hatte, es zeigte kein wahres Zeichen, dann änderte ich die Einstellung in der Systemsteuerung -> Region und Sprache -> Verwaltung -> Sprache für Nicht-Unicode und stellte sie für ein meine Sprache.


1
Die betreffenden Schriftarten sind ausschließlich Bestandteil von Unicode. Die Einstellung für Nicht-Unicode kommt hier nicht ins Spiel. Jedenfalls hat niemand "Ägyptische Hieroglyphen" als Computersprache.
Mr. Shiny und New 安 安

@ Mr.ShinyandNew 宇 宇: 𓀜 𓀇 𓀉 𓀉 𓀊 𓀋 𓀜 𓀜 𓀜 𓀜 𓀜 𓀜 𓀚 𓀜 !!
Cerberus

-3

Wenn keine Schriftarten installiert sind, die mit den Zeichen übereinstimmen, können sie nicht angezeigt werden. Windows lädt Schriftarten nicht automatisch herunter!

Sie können die Verwendung @font-face( Webfonts ) in die CSS Ihrer Webseite einbetten . Fügen Sie Ihrem CSS so etwas hinzu, um das Webfont zu definieren:

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

Wenden Sie dann einen Stil auf das Element mit den Hieroglyphen in Ihrem CSS an:

.hieroglyphics {font-family: NotoSansEgyptianHieroglyphs;}

2
Ich habe Schriftarten installiert. Und ich habe auf zwei verschiedenen Windows-VMs überprüft, dass die Installation der Schriftarten normalerweise ausreicht, damit sie funktionieren. Etwas an meiner Maschine ist anders, aber ich weiß nicht, wo ich suchen soll, um sie zu finden.
Mr. Shiny und New 安 安
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.