Perché Chrome su Windows 7 non mi mostra alcuni caratteri Unicode?


21

Questa domanda di Apple contiene il testo

qual è questa chiave? ⎋

A me sembra così in Google Chrome:

inserisci qui la descrizione dell'immagine

Perché quel personaggio Unicode, o altri simili, non è visualizzabile in Google Chrome su Windows 7?


A me sembra una scatola ... In ogni caso, il doppio distacco è disapprovato.
soandos,

3
@soandos di quale altro post stai parlando? inoltre, non dovrebbe essere una scatola. ecco perché sto ponendo la domanda. Qualcuno ha fatto una domanda su askdifferent e ha scritto un carattere unicode lì, ma sulla mia installazione di Chrome vedo la casella generica.
Michael Pryor,

3
Come faccio io ... Sembra che non sia un problema con la tua installazione di Chrome, è per tutti i chrome. FF lo riconosce bene. Chrome non può nemmeno riconoscerlo come carattere Unicode (non credo).
soandos,

È interessante notare che Chromium su Ubuntu funziona bene.
Kibbee,

@soandos Funziona bene con Google Chrome (12.0.742.112) su Ubuntu 11.04 (Natty).
Mike Spross,

Risposte:


20

Suppongo sia un problema di sostituzione dei caratteri.

I browser riscontrano il problema di "Il glifo selezionato non si trova nel carattere specificato". Da qui puoi seguire due direzioni: puoi estrarre il glifo equivalente da un altro carattere (che spesso sembrerà rotto ma potrebbe non essere chiaro il motivo per l'utente) o semplicemente visualizzare un segnaposto carattere non trovato (che sembrerà sempre rotto, ma almeno ovviamente).

Immagino che Firefox e Opera riconoscano che il glifo richiesto è un simbolo sicuro da estrarre da un altro font, mentre i restanti browser sono conservatori e mostrano solo il glifo "Uh ... non lo so".


Credo che Chrome e Safari utilizzino entrambi Windows GDI per il rendering del testo su Windows. IE9 utilizza DirectWrite che sembra avere lo stesso comportamento di GDI in questo caso.
Craig Williams,

Interessante: ottieni lo stesso risultato se lo incolli nella barra degli indirizzi.
xpda,

@xpda hai ragione; il personaggio funziona nella barra degli indirizzi e nel corpo su Firefox e non funziona in nessuno dei due punti in Chrome. Affascinante.
Jeff Atwood,

5
Sembra giusto: Chrome e Firefox utilizzano entrambi Uniscribe per eseguire il rendering del testo nel browser e Uniscribe restituisce un codice di errore all'applicazione chiamante quando non è possibile trovare un determinato carattere nel carattere corrente. Spetta all'applicazione decidere se Uniscribe deve quindi utilizzare il fallback dei caratteri per trovare una sostituzione o se deve semplicemente visualizzare il glifo della casella. Chrome è uno dei browser che dice "Qualunque cosa, non mi interessa. La scatola va bene."
Mike Spross,

11

Interessante. Non è solo Chrome: potresti chiedere perché uno dei seguenti browser non può visualizzarlo su Windows 7:

inserisci qui la descrizione dell'immagine

Da cima a fondo:

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

Pertanto, Firefox e Opera possono visualizzare questo carattere unicode in Windows 7, ma gli altri browser no.

qual è questa chiave? ⎋


Per quel che vale, quella chiave è "ESC" in Mac OS X.
Martin Marconcini,

@jjn è una risposta parziale, generalmente consentita
Jeff Atwood,

Notato. (Commento ritirato.)
jjnguy

Come browser simili sono in questi giorni ... :)
balexandre

2
Chrome 13.0.782.107/Linux: ok
Arnaud Le Blanc,

6

La domanda "Perché è quel carattere Unicode, [...] non visualizzabile in Google Chrome su Windows 7?" è il

Quel personaggio particolare è semplicemente un punto di codice unicode che è un numero arbitrario. Esistono molti punti di codice unicode che non hanno un simbolo "ufficiale". Anche se hanno un simbolo, non è necessariamente il caso che il tuo carattere abbia un simbolo per quel punto di codice. Se scegli un carattere diverso, potresti finire con un simbolo diverso.

Ho guardato il CSS per la pagina e mostra questo personaggio visualizzato in Arial (oltre a un mucchio di altri caratteri che non contano). Windows viene fornito con Arial, quindi dovrebbe sempre prendere prima quel carattere. Sembra che Arial non abbia un simbolo per quel punto di codice unicode. Ogni volta che non si dispone di un glifo per un punto di codice, viene inserito in una forma di una casella che indica che non è presente un glifo (come altri hanno indicato).

La domanda più grande è: che cosa fa esattamente Firefox o gli altri browser dove funziona su Windows. Ho guardato gli altri caratteri elencati nel CSS (ho pensato che potrebbe ricadere sul prossimo carattere CSS) ma anche loro non hanno un glifo per quel punto di codice. Una possibilità è che Firefox sia effettivamente fornito con i propri caratteri.

Scavando in Firefox, ho notato alcuni caratteri per i simboli matematici qui: 'C: \ Programmi (x86) \ Mozilla Firefox \ res \ fonts'. Forse questo è da dove viene.


3

So che questa è una domanda un po 'vecchia, ma per coloro che sono di recente su Google, ho una soluzione che ha funzionato nel 2013. Innanzitutto, è necessario confermare che nel PC Windows 7 è installato un font che può essere visualizzato il carattere:

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

Supponendo che almeno un carattere nell'elenco dei caratteri locali venga visualizzato come segue:

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

In caso contrario, installa un paio di caratteri Unicode "cattura tutti": Code2000 e Symbola

Una volta che hai un carattere che visualizzerà il simbolo, puoi provare la pagina di prova del browser:

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

Chrome 28.0.1500.95 (e probabilmente tutte le versioni recenti) esegue la sostituzione del carattere ... principalmente.

Per qualsiasi motivo, anche con caratteri che rendono U + 1F3C1 correttamente installato, Chrome 28.0 non mostrerà questo carattere Unicode: 🏁. Firefox funziona magnificamente. Vai a capire.

  • Dave

La sostituzione dei font di sopra del BMP è ancora rotto in Chrome per Windows solo : code.google.com/p/chromium/issues/detail?id=111382
Fizz

2

Secondo il minimo assoluto Ogni sviluppatore di software deve assolutamente conoscere positivamente gli Unicode e i set di caratteri (senza scuse!) Di Joel Spolsky , "Se non esiste un equivalente per il punto di codice Unicode che stai cercando di rappresentare nella codifica che stai provando per rappresentarlo, di solito ottieni un piccolo punto interrogativo:? o, se sei davvero bravo, una scatola ".

Sto eseguendo Chromium 13.0.782.112 su Archlinux e la mia codifica predefinita è en_US.UTF-8 - il carattere viene visualizzato correttamente sulla pagina originariamente collegata.


2
va bene, ma non credo che la domanda riguardasse la scatola, ma perché alcuni browser possono mostrare questo personaggio in particolare e altri no.
Jeff Atwood,

@Jeff Atwood, d'accordo - semmai, la mia risposta fornisce prove a sostegno della questione tipografica; leggi qui . Non posso dirti il ​​carattere predefinito in quanto non sono davanti alla mia macchina.
wulfgarpro,


0

Firefox 45.0 sul mio GNU / Linux LFS 7.9 non mostrava il glifo Unicode menzionato in questione, inoltre non mostrava altri glifi come greco ecc.

Tuttavia, dopo aver scaricato il Symbolafont da qui e poi:

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

Firefox ora mostra il glifo in questione e mostra anche altri glifi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.