Pourquoi des emoji comme đŸ’© apparaissent-ils lorsque j'utilise Safari, mais pas Chrome?


30

Pourquoi des emoji comme đŸ’© apparaissent-ils lorsque j'utilise Safari, mais pas Chrome sur le mĂȘme MacBook exĂ©cutant Lion? Les deux navigateurs utilisent WebKit, et j'imagine que la prise en charge des polices provient du systĂšme d'exploitation, pas de l'application.

Pour référence, voici la page rendue dans Chrome 17.0.963.56:

Chrome 17.0.963.56

Et voici la page rendue dans Safari 5.1.3 (7534.53.10):

Safari 5.1.3 (7534.53.10)


9
Je le vois dans Chrome et je ne vois pas le đŸ’© dans la question ou le titre, mais je le vois dans le titre de l'onglet en haut de la fenĂȘtre.
CajunLuke

Je passe rarement la souris sur des onglets pour voir le titre de la page complĂšte, mais vous avez raison, c'est effectivement le cas. C'est trĂšs surprenant.
Jason Salaz

Il se pourrait que les plug-ins Chrome dans sa propre palette de caractĂšres, qui pourrait ĂȘtre une version hybride entre la native et la propriĂ©taire. Et ils ont juste besoin de le mettre Ă  jour pour OS X. Mais je sais que les emoji ne sont pas seulement une question de type de police (vous ne pouvez pas porter d'emoji sur SL par exemple en installant simplement la police respective). Il y a donc plus que la simple lecture d'un nouveau type de police. Je dĂ©poserais un bogue avec Google. Ou demandez un support complet.

14
Étant donnĂ© que les visiteurs avec Chrome auront du mal Ă  lire le titre, je vote pour remplacer le titre par "Comment puis-je produire des morceaux sur Google Chrome?"
Gerry

@cksum J'ai rétabli le titre car il est devenu un élément d'information pertinent dans la question.
Jason Salaz

RĂ©ponses:


27

La diffĂ©rence rĂ©side dans les moteurs de rendu pour les fenĂȘtres du navigateur.

Nous savons que Safari rend le jeu de caractÚres différemment de Chrome. Mais les éléments de l'interface utilisateur de Windows (les onglets dans Chrome) sont corrects. C'est notre plus grand indice.

Les Ă©lĂ©ments de l'interface utilisateur de la fenĂȘtre sont susceptibles (accent sur probable, je ne suis peut-ĂȘtre pas correct ici) tous rendus par le systĂšme d'exploitation. Ils bĂ©nĂ©ficient donc du traitement d'expansion emoji complet au niveau du systĂšme d'exploitation.

Mais ce qui se passe dans une fenĂȘtre de navigateur Web dĂ©pend entiĂšrement du navigateur. Les moteurs de rendu sont une grande partie de la sauce secrĂšte de chaque navigateur.

Safari et Chrome utilisent WebKit, mais les similitudes entre les instances WebKit qu'ils utilisent s'arrĂȘtent quelque part autour du nom du moteur. Ils sont tous les deux des fourchettes de la version principale et ils sont tous deux fortement personnalisĂ©s pour amĂ©liorer les performances de maniĂšre que chaque Ă©quipe de dĂ©veloppement de navigateur juge utile pour leurs utilisateurs finaux.

@JasonSalaz a trouvé un excellent bogue dans la base de données de bogues de Chrome qui nous donne le dernier indice qu'il s'agit de fourches WebKit: http://code.google.com/p/chromium/issues/detail?id=90177 - ce bogue est parler des différences entre le fork de Chrome et la ligne principale de WebKit du projet open source. Il existe des différences de rendu dans la ligne principale qui n'ont pas encore été intégrées à la version utilisée par Chrome. Et il semble qu'ils ont l'intention de fusionner les modifications à un moment donné.

Mise à jour: Paul Irish a un excellent article de blog sur la façon dont WebKit diffÚre pour tous ces navigateurs qui l'utilisent actuellement . Si vous voulez vraiment comprendre à quel point l'environnement WebKit est diversifié, c'est une excellente lecture.


Argh. Aurait dĂ» saisir quelques captures d'Ă©cran. Eh bien ...
Ian C.

Le ticket de bogue Chromium qui suit le support Emoji est celui-ci: crbug.com/62435 Celui auquel vous avez lié est un doublon.
Mathias Bynens

Pour mémoire: il est toujours cassé dans Chrome 20.0.1132.57.

Oh super, selon le commentaire 17 du rapport de bogue, ce problÚme a été résolu. Si quelqu'un veut se plaindre à nouveau, vous devez déposer un nouveau rapport de bogue.
gentmatt

1
Il fonctionne maintenant à partir de Chrome 41! 🚀🚀🚀🚀🚀🚀🚀
yincrash

12

Vous pouvez utiliser l'extension Chrome Chromoji . C'est une solution de contournement qui remplacera les emoji par des images intégrées dans les pages Web.


2
Fonctionne totalement, pour Twitter au moins, ne supprimez pas la réponse.
MarcusJ

2

Le problÚme est que votre navigateur utilise un codage de caractÚres différent de celui du document que vous consultez.

Alors, comment le navigateur sait-il quel encodage de caractĂšres utiliser?

  1. Il peut ĂȘtre spĂ©cifiĂ© dans HTTP Ă  l'aide de l'en- Content-TypetĂȘte.
  2. Il peut ĂȘtre spĂ©cifiĂ© pour le document HTML Ă  l'aide de l' metaĂ©lĂ©ment.
  3. Il peut ĂȘtre spĂ©cifiĂ© pour un Ă©lĂ©ment HTML spĂ©cifique Ă  l'aide de l' charsetattribut.

Si aucun de ceux-ci n'est spécifié, différents navigateurs utilisent différentes techniques pour deviner le bon codage des caractÚres. Certains utilisent l'heuristique. Certains permettent à l'utilisateur de spécifier un codage de caractÚres. Certains sélectionnent l'encodage de caractÚres par défaut du systÚme d'exploitation.

Si aucun de ces éléments ne sort, vous obtenez le charabia, également connu sous le nom de mojibake.

Donc, pour répondre directement à votre question: Safari et Chrome essaient différentes choses pour trouver le bon encodage de caractÚres.


3
Affichage -> L'encodage de texte dans Safari indique «Par défaut». Affichage -> L'encodage dans Chrome indique «UTF-8». Les préférences de Safari indiquent que l'encodage par défaut est occidental (ISO Latin 1). Si je change l'encodage dans Chrome en Western (ISO-8859-1), Western (Windows-1252) ou Western (Macintosh), je ne vois toujours pas les emoji corrects, mais je vois du charabia au lieu de l'espace vide. Je ne pense pas que ce soit aussi simple que le codage de caractÚres. Je soupçonne qu'il y a des différences de rendu. (suite ...)
Ian C.

1
(suite de ci-dessus) Cela expliquerait la barre de titre montrant les emoji (le texte est probablement rendu par le moteur de rendu d'OS X car c'est un Ă©lĂ©ment graphique sur une fenĂȘtre) et le corps de la page est rendu par le propre moteur de rendu de Chrome.
Ian C.

1
@IanC. c'est probablement digne de rĂ©ponse si vous dĂ©veloppez un peu plus. Chrome utilise WebKit, mais sinon aucune des classes d'ObjC / Cocoa qui supportent nativement les emoji. C'est aprĂšs tout la fonctionnalitĂ© n ° 1 de Chrome, mĂ©chante et rapide qui n'est invariablement obtenue qu'avec une solution personnalisĂ©e. Donc, Chrome devrait soit explicitement Ă©crire le support des emoji, soit arrĂȘter de faire ce qui fait que les gens les prĂ©fĂšrent Ă  Safari et aux autres navigateurs. (Devinez lequel est le plus probable?)
Jason Salaz


@JasonSalaz belle capture avec ce rapport de bogue. Voilà la derniÚre piÚce. Rédaction de la réponse!
Ian C.

0

Allez dans la barre de menu Chrome, cliquez sur "Plus d'outils" → "Encodage" et choisissez un nouveau format d'encodage. J'utilise "Unicode UTF-8", cela semble fonctionner pour moi.


-1

https://code.google.com/p/chromium/issues/detail?id=62435 a été marqué comme corrigé récemment; à partir de la version 41, les emoji devraient s'afficher correctement dans Chrome.


1
Bien qu'utile, ce n'est pas vraiment une réponse. Cela n'explique pas pourquoi cela se produisait. Il vaut mieux laisser un commentaire OMI.
Ian C.

Cela est arrivé parce que le support des emojis n'a pas été implémenté. La question n'aura donc plus de sens une fois que m41 sera stable.
thakis du

-9

Le symbole est un personnage créé par Apple. Safari utilise son propre jeu de caractÚres.


5
En fait, "pile de caca" est un caractĂšre standard international en Unicode - symbole 1F4A9 et mĂȘme pas spĂ©cifique Ă  Apple et encore moins quelque chose de spĂ©cial Ă  Safari. Voir l'entrĂ©e Wikipedia sur Emoji et ce PDF pour plus de dĂ©tails.
bmike

2
Bien que le personnage ne soit pas unique à Apple, les couleurs le sont. Je ne connais aucune autre police de couleur à ce jour et je pense qu'Apple a créé son propre standard pour le faire (une table sbix propriétaire). Diverses applications ne reconnaßtront pas cette police, mais s'afficheront à partir de la police normale noire / blanche Symbola.
Tom Gewecke

1
PS Parce qu'il y a en effet quelque chose d '"Apple unique" dans cette police, je pense que cette réponse n'est pas aussi éloignée que la note négative pourrait le suggérer.
Tom Gewecke

@TomGewecke, "Safari utilise son propre jeu de caractÚres" est tout simplement faux. Je pense donc que les notes négatives sont méritées.
jbg
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.