2015-04-15 13 views
9

Ich habe versucht, die Unicode-Symbole für Astrologie in Produkten für Apple und iOS zu verwenden. Ich erhalte inkonsistente Ergebnisse, wie hier gezeigt:Inkonsistente Unicode Emoji Glyphen/Symbole

Image of some astrological symbols in a table

Die meisten von ihnen kommen aus wie Ich mag, aber aus irgendeinem Grund die Taurus Symbol in der ersten Zeile ein Weg ist, erscheint, nach dem Mond, und eine ganz andere Art, mit dem Emoji-like Purpur-Knopf, wenn er dem Mars folgt. Diese Ergebnisse sind für verschiedene Symbole und Apple-Hardware konsistent. Hier ist eine Bildschirmaufnahme von meinem Handy, die das gleiche Problem mit einigen anderen Zeichen zeigt - Skorpion kommt gut heraus, aber Waage und Krebs sind Knöpfe.

More symbols in a clip from an iPhone

Die Saiten sind extrem einfach; "Moon Taurus" im ersten Bild ist \u263D für Mond, \u2649 für Taurus, im Wesentlichen zusammengebaut als [NSString stringWithFormat:@"%@%@", @"\u263D", @"\u2649"]. Das Bild "Mars Taurus" ist das gleiche, nur mit \u2642 für Mars. Die Zeichenfolgenformatierung ist in den verschiedenen Zellen der OSX-Tabelle und im iOS-AttributiertenString identisch.

Irgendeine Idee, was macht diese Symbole manchmal in einer Weise angezeigt, und andere Male?

Antwort

11

Unicode verwendet Variationssequenzen, um zwischen verschiedenen Renderings für bestimmte Codepunkte auszuwählen, die in der Datei StandardizedVariants.txt aufgeführt sind. In Ihrem Fall haben die astrologischen Symbole sowohl „Textstil“ und „Emoji Stil“ Varianten, die zwischen von einem U+FEOE (Textstil) ausgewählt oder U+FE0F (Emoji-Stil) nach dem Codepunkt:

U+2650U+FE0E: ♐︎

U+2650U+FE0F: ♐️

Hinweis, dass die korrekte Interpretation der Auswahl Variation Unterstützung hängt sowohl von der Anwendung/Rahmen und die Schriftarten verwendet werden. Auf Chrome (42) scheint es keinen Unterschied zwischen meinen obigen Beispielen zu geben, aber auf Safari (8) sind sie unterschiedlich.

+1

Danke, das rockt. Und funktioniert. Schade, dass Chrome es nicht respektiert, aber am wichtigsten sind meine iOS- und OSX-Apps. – Apollo

+0

Wpf apps respektieren dies auch nicht. – avenmore