Warum zeigt Chrome unter Windows 7 mir bestimmte Unicode-Zeichen nicht an?

21

Diese Apple-Frage enthält den Text

Was ist dieser Schlüssel? ⎋

Was für mich in Google Chrome so aussieht:

Bildbeschreibung hier eingeben

Warum kann dieses oder ein ähnliches Unicode-Zeichen in Google Chrome unter Windows 7 nicht angezeigt werden?

Michael Pryor
quelle
Für mich sieht es aus wie eine Schachtel ... Auf jeden Fall ist Doppelposting verpönt.
Soandos
3
@soandos über welchen anderen Beitrag sprichst du? Es sollte auch keine Schachtel sein. Deshalb stelle ich die Frage. Jemand hat eine Frage zu askdifferent gestellt und dort ein Unicode-Zeichen eingegeben, aber bei meiner Installation von Chrome sehe ich die generische Box.
Michael Pryor
3
Wie ich ... Es scheint, dass es kein Problem mit Ihrer Chrominstallation ist, es ist für alle Chromteile. FF erkennt es gut. Chrome kann es nicht einmal als Unicode-Zeichner erkennen (glaube ich nicht).
Soandos
Interessanterweise funktioniert Chromium unter Ubuntu einwandfrei.
Kibbee
@soandos Funktioniert gut mit Google Chrome (12.0.742.112) unter Ubuntu 11.04 (Natty).
Mike Spross

Antworten:

20

Ich gehe davon aus, dass es sich um ein Problem mit der Schriftersetzung handelt.

Bei den Browsern tritt das Problem auf, dass die ausgewählte Glyphe nicht die angegebene Schriftart aufweist. Von hier aus können Sie in zwei Richtungen vorgehen: Sie können entweder die entsprechende Glyphe aus einer anderen Schriftart herausziehen (die häufig kaputt aussieht , dem Benutzer jedoch möglicherweise nicht klar ist, warum ) oder nur einen Platzhalter anzeigen, der kein Zeichen enthält (der nicht gefunden wurde) wird immer kaputt aussehen, aber zumindest offensichtlich so).

Ich stelle mir vor, Firefox und Opera erkennen, dass die angeforderte Glyphe ein Symbol ist, das sicher von einer anderen Schriftart abgerufen werden kann, während die übrigen Browser konservativ sind und nur die Glyphe "Uh ... dunno" anzeigen.

Charles Miller
quelle
Ich glaube, Chrome und Safari verwenden beide Windows GDI für die Textwiedergabe unter Windows. IE9 verwendet DirectWrite, das in diesem Fall anscheinend dasselbe Verhalten wie GDI aufweist.
Craig Williams
Interessant: Sie erhalten das gleiche Ergebnis, wenn Sie es in die Adressleiste einfügen.
xpda
@ xpda du hast recht; Der Charakter funktioniert in der Adressleiste und im Text in Firefox und an keiner Stelle in Chrome. Faszinierend.
Jeff Atwood
5
Klingt ungefähr richtig: Chrome und Firefox verwenden beide Uniscribe , um Text im Browser zu rendern, und Uniscribe gibt nur einen Fehlercode an die aufrufende Anwendung zurück, wenn ein bestimmtes Zeichen in der aktuellen Schriftart nicht gefunden wird. Es liegt an der Anwendung, zu entscheiden, ob Uniscribe dann mithilfe von Font Fallback eine Ersetzung finden soll oder ob nur die Box-Glyphe gerendert werden soll. Chrome ist einer der Browser, der nur sagt: "Egal, es ist mir egal. Box ist in Ordnung."
Mike Spross
11

Interessant. Es ist nicht nur Chrome - Sie könnten sich fragen, warum einer der folgenden Browser ihn unter Windows 7 nicht anzeigen kann:

Bildbeschreibung hier eingeben

Von oben nach unten:

  • Firefox (y)
  • IE9 (n)
  • Chrome (n)
  • Opera (y)
  • Safari (n)

Daher können Firefox und Opera dieses Unicode-Zeichen in Windows 7 anzeigen, die anderen Browser jedoch nicht.

Was ist dieser Schlüssel? ⎋

Jeff Atwood
quelle
Für was es wert ist, ist dieser Schlüssel "ESC" in Mac OS X.
Martin Marconcini
@jjn es ist eine teilweise Antwort, die in der Regel erlaubt ist
Jeff Atwood
Zur Kenntnis genommen. (Kommentar zurückgezogen.)
jjnguy
Wie ähnlich Browser sind in diesen Tagen ... :)
Balexandre
2
Chrome 13.0.782.107/Linux: ok
Arnaud Le Blanc
6

Die Frage "Warum ist dieses Unicode-Zeichen in [...] Google Chrome unter Windows 7 nicht sichtbar?" ist der

Dieses bestimmte Zeichen ist einfach ein Unicode-Codepunkt, der eine beliebige Zahl ist. Es gibt viele Unicode-Codepunkte ohne offizielles Symbol. Auch wenn sie ein Symbol haben, muss Ihre Schriftart nicht unbedingt ein Symbol für diesen Codepunkt haben. Wenn Sie eine andere Schriftart auswählen, wird möglicherweise ein anderes Symbol angezeigt.

Ich habe mir das CSS für die Seite angesehen und es zeigt dieses Zeichen, das in Arial angezeigt wird (plus eine Reihe anderer Schriften, die keine Rolle spielen). Windows wird mit Arial geliefert, daher sollte diese Schriftart immer zuerst verwendet werden. Es sieht aus wie Arial ist nicht ein Symbol für die Unicode - Codepoint hat. Immer wenn Sie keine Glyphe für einen Codepunkt haben, wird in einem Kästchen angezeigt, dass keine Glyphe vorhanden ist (wie andere angegeben haben).

Die größere Frage ist, was genau Firefox oder die anderen Browser tun, wenn es unter Windows funktioniert. Ich habe mir die anderen im CSS aufgelisteten Schriftarten angesehen (ich dachte, es könnte auf die nächste CSS-Schriftart zurückgreifen), aber sie haben auch keine Glyphe für diesen Codepunkt. Eine Möglichkeit ist, dass Firefox tatsächlich mit eigenen Schriftarten ausgeliefert wird.

Als ich mich mit Firefox beschäftigte, bemerkte ich hier einige Schriftarten für mathematische Symbole: 'C: \ Programme (x86) \ Mozilla Firefox \ res \ fonts'. Vielleicht kommt es von dort.

Chris Dail
quelle
3

Ich weiß, dass dies eine alte Frage ist, aber für diejenigen, die gerade erst mit Google arbeiten, habe ich eine Lösung, die 2013 funktioniert hat. Zunächst müssen Sie bestätigen, dass auf Ihrem Windows 7-PC eine Schriftart installiert ist, die gerendert werden kann Die Schriftart:

http://www.fileformat.info/info/unicode/char/238b/index.htm

Angenommen, mindestens eine Schriftart in der lokalen Schriftartliste gibt Folgendes wieder:

http://www.fileformat.info/info/unicode/font/fontlist.htm?text=%E2%8E%8B+-+Unicode+Character+%27BROKEN+CIRCLE+WITH+NORTHWEST+ARROW%27+%28U%2B238B % 29

Wenn nicht, installieren Sie ein paar "catch all" Unicode-Schriften: Code2000 und Symbola

Sobald Sie eine Schriftart haben, die das Symbol wiedergibt, können Sie die Browsertestseite testen:

http://www.fileformat.info/info/unicode/char/238b/browsertest.htm

Chrome 28.0.1500.95 (und wahrscheinlich alle neueren Versionen) führt die Schriftersetzung hauptsächlich durch.

Aus irgendeinem Grund zeigt Chrome 28.0 auch bei Schriftarten, die U + 1F3C1 korrekt installieren, nicht das folgende Unicode-Zeichen an: 🏁. Firefox funktioniert wunderbar. Stelle dir das vor.

  • Dave
ViperGeek
quelle
Die Schriftersetzung über dem BMP ist nur in Chrome für Windows noch fehlerhaft
Fizz
2

Wie pro Absolutely der Entwickler Software Absolute Minimum jeder, Positively müssen über Unicode und Zeichensätze wissen (No Excuses!) Von Joel Spolsky „Wenn es kein Äquivalent für den Codepunkt Unicode ist Sie versuchen , in das Codieren Sie zu repräsentieren sind versuchen , um es darzustellen, bekommst du normalerweise ein kleines Fragezeichen:? oder, wenn du wirklich gut bist, eine Schachtel . "

Ich starte Chromium 13.0.782.112 unter Archlinux und meine Standardkodierung ist en_US.UTF-8 - das Zeichen wird gut auf der ursprünglich verlinkten Seite angezeigt.

wulfgarpro
quelle
2
Das ist in Ordnung, aber ich glaube nicht, dass es um die Box ging, sondern darum, warum einige Browser dieses bestimmte Zeichen anzeigen können und andere nicht.
Jeff Atwood
@ Jeff Atwood, einverstanden - wenn überhaupt, liefert meine Antwort stützendere Beweise für das typografische Problem; hier lesen . Ich kann Ihnen die Standardschrift nicht sagen, da ich nicht vor meinem Computer stehe.
Wulfgarpro
0

Die eigentliche Antwort: Es liegt daran, dass es einen Fehler in Chrome gibt, der das Rendern von Unicode-Schriftarten unter Windows 7 (und höher?) Beeinträchtigt.

Das Problem ist hier mit allen wichtigen Details: https://crbug.com/42984 (starte es und vielleicht wird es jemand bemerken?)

Weitere Analysen und eine mögliche Problemumgehung finden Sie hier: http://gschoppe.com/uncategorized/fixing-unicode-support-in-google-chrome/ .

Noyo
quelle
0

Firefox 45.0 auf meinem GNU / Linux LFS 7.9 zeigte das in Frage kommende Unicode-Glyphen nicht an, zeigte auch keine anderen Glyphen wie Griechisch usw. an.

Nach dem Herunterladen der SymbolaSchrift von hier und dann:

~$ unzip Downloads/symbola.zip -d Downloads
~$ mv Downloads/Symbola/Symbola_hint.ttf .fonts
~$ fc-cache

Firefox zeigt jetzt das betreffende Symbol und auch andere Symbole an.

user3405291
quelle