14

В Thunderbird 3, когда я получаю сообщение со смайликом с помощью опции просмотра "Оригинальный HTML" или "Упрощенный HTML", оно выглядит так:

Не смайлик

Это … J . Однако, если я рассматриваю сообщение как "Простой текст", я получаю смайлик

Ок смайлик

Фактическое сообщение в "источнике представления" выглядит так:

Content-Type: multipart/alternative;
    boundary="_000_7EE28"
MIME-Version: 1.0

--_000_7EE28
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Se        r=F3n... :)

Это = F3 - «ó» (я подверг цензуре сообщение для легко обиженных испанских читателей там). Может быть, это как-то связано с кодировкой? Я использую Linux и использую LANG = en_US.UTF-8.

Кто-нибудь знает, что здесь пошло не так и как это исправить?

РЕДАКТИРОВАТЬ: я пытался переключить кодирование на ISO-8859-1 и принудительно, но без радости.

После дальнейшего расследования, кажется, что проблема Wingdings является проблемой. Фактический HTML имеет следующий фрагмент, где должен быть смайлик:

<span style='font-= size:11.0pt; font-family:Wingdings'>J</span>

... так как это многокомпонентное текстовое /HTML-сообщение, и я только добавил текстовую часть выше.

3 ответа3

24

Вот мое решение. Я написал дополнение к Thunderbird, которое заменяет J, L, è, à и · на правильный UTF-8 смайлик, стрелку или что-то еще.

До:

После:

Благодарю Isxek за то, что он поставил меня на правильный путь!

3

В этой статье Lifehacker есть некоторые объяснения того, что происходит. В основном это говорит о том, что когда отправитель вводит символ «:)», его Outlook автоматически преобразует его в смайлик, отображаемый шрифтом Wingdings. Насколько я знаю, это происходит, когда Outlook использует Word для редактирования сообщений электронной почты.

На данный момент я на коробке с установленным Outlook, а не с Thunderbird. Можно ли изменить кодировку на ISO-8859-1, чтобы увидеть, что происходит?

1

Решением этой проблемы на стороне получателя было бы установить шрифт SWEC (символьная совместимость Wingdings Emoticons): https://drive.google.com/open?id=0BwDrnPQfa-aMOEx0bEZCQUNrSGs

Обеспечивает базовую совместимость с смайликами Wingdings. (В Wingdings "J" означает улыбку, "K" означает отсутствие выражения, а "L" означает недовольство.) Предыстория: некоторые версии почтовых клиентов Microsoft, которые все еще используются, изменяют пользовательские выражения, такие как «:)», «: |» и «:(», на "J", "K" и "L" соответственно и затем укажите Wingdings в качестве семейства шрифтов: получатели в системах, в которых отсутствует шрифт, совместимый с Wingdings, не могут видеть нужные смайлики, что может привести к путанице.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .