Многие смайлики заменяют символы, которые я уже использую, обычно импортированные с символьной клавиатуры; но он плохо сочетается с моноширинным, мелким или форматированным текстом; например, мне нравится приправлять мои документы текстовыми изображениями (изображения, сделанные (обычно) из моноширинного шрифта и его символов).
К таким символам относятся:↔↕↖↗↘↙➡⬅⬆⬇⚪⚫⬛⬜, в данном случае (с моей стороны) некоторые из них работали корректно. скорость, с которой это происходит, непоследовательна даже в одном и том же документе!
Существует как «текстовый стиль», так и «стиль эмодзи» для файлов U+25B6 BLACK RIGHT-POINTING TRIANGLE (▶)
. Какой бы стиль вы ни получили, зависит от стиля шрифта, который вы используете в данный момент. Например, шрифт Apple Color Emoji имеет глиф «стиль эмодзи», U+25B6 BLACK RIGHT-POINTING TRIANGLE
а шрифт Lucida Grande имеет глиф «стиль текста» для U+25B6 BLACK RIGHT-POINTING TRIANGLE
. Это нормально в текстовом редакторе, где у вас есть контроль над шрифтом, который вы используете для каждого символа, но не в тех контекстах, где у вас его нет.
Консорциум Unicode фактически предоставил решение этой проблемы в Unicode 6.1, подробно описанное в этом Техническом отчете Unicode.
По сути, они назначили две кодовые точки в качестве селекторов вариантов эмодзи: U+FE0E VARIATION SELECTOR-15
(для текстовой презентации) и U+FE0F VARIATION SELECTOR-16
(для презентации эмодзи).
Позвольте мне объяснить, как они работают. Всякий раз, когда вы вводите один из этих двух селекторов вариантов в текстовое поле (путем копирования и вставки или другими способами), система рендеринга текста вашей операционной системы , соответствующая стандарту Unicode, v6.1+, изменит глиф ( через замену шрифта , если необходимо) для символа, непосредственно предшествующего селектору варианта, который вы только что ввели, на один, соответствующий либо «текстовому стилю», либо «стилю эмодзи» (в зависимости от того, какой селектор варианта вы ввели после эмодзи).
Вот демонстрация:
▶︎(U+25B6 U+FE0E)
▶️(U+25B6 U+FE0F)
Для людей, просматривающих эту страницу в более старых операционных системах, я включил несколько изображений ниже, демонстрирующих поведение в обычном текстовом поле в OS X v10.11 El Capitan.
Системный шрифт в OS X v10.11 (то есть San Francisco ) не имеет глифа для U+25B6 BLACK RIGHT-POINTING TRIANGLE
, поэтому система рендеринга текста OS X автоматически выполняет замену шрифта и в конечном итоге вместо этого использует шрифт пользовательского интерфейса Lucida Grande , который имеет «стиль текста». ' глиф для U+25B6
:
Использование U+FE0E VARIATION SELECTOR-15
сразу после этого заставляет его быть «текстовым стилем», поэтому результат тот же:
Использование U+FE0F VARIATION SELECTOR-16
сразу после него вместо этого приводит к тому, что система рендеринга текста OS X использует вместо этого шрифт с глифом «стиль эмодзи» U+25B6 BLACK RIGHT-POINTING TRIANGLE
, который оказывается шрифтом Apple Color Emoji :
(Для любопытных на скриншотах показана незаменимая утилита Split Up в UnicodeChecker ).
︎
не может предотвратить стилизацию эмодзи. ( 💬︎
отображается стилизованным на iOS, но не на других устройствах.)Вы не можете. Смайлики являются частью iOS и не могут быть отключены.
В Сообщениях на Mac есть возможность не заменять обычные смайлики эмодзи.
Правка > Замены > Эмодзи
У меня это отключено на моем Mac, и если я печатаю ;-), это то, что передается.
Если я сделаю то же самое на своем iPhone, произойдет то же самое, только ;-) будет передано и получено.
Я не помню, чтобы изменил это поведение на телефоне, и я не могу найти какой-либо вариант, который позволил бы мне - и изменение его на Mac, похоже, не влияет на телефон.
Тем не менее, Том Гевеке прав, поскольку, если принимающее устройство не является другим iPhone, его устройство может автоматически переводиться в смайлики, над которыми вы не можете контролировать.
Другое дело, что у вас также нет контроля над тем, какой шрифт используется принимающим устройством.
Сказав все это, я предполагал, что вы говорите об iMessage, но я понимаю, что это неясно из вашего вопроса. Возможно, уточнение того, какое приложение вы имеете в виду, может изменить этот и другие ответы.
Кроме того, насколько я вижу, ни один из тех символов, которые вы использовали, на самом деле не является смайликом, просто более высокий ascii или, возможно, юникод [я не проверял каждый]
Эдгар
Кевин Грабхер
Том Гевеке