Специальные символы в CFMail - PullRequest
2 голосов
/ 12 ноября 2008

Я пытаюсь автоматически сгенерировать текстовое электронное письмо с символом товарного знака. Я перепробовал все, что мог придумать, но до сих пор не прошел.

<cfmail from="#x#" to="#y#" subject="test" charset="UTF-8">
  ™
  &trade;
  #Chr(153)#
</cfmail>

Ответы [ 2 ]

5 голосов
/ 12 ноября 2008

Это проблема с кодировкой.

Вы заявляете, что почта закодирована как UTF-8, но Chr(153) не возвращает символ товарного знака в Юникоде. Это работает в Windows-1252, но Chr() работает с кодовыми точками Unicode.

Используйте Chr(8482), чтобы прикрепить его к символу Unicode TM .

Я нашел информационную страницу , которая хорошо описывает проблему .

Кстати, написание буквального символа ТМ работает и для меня. Но это предполагает, что ваши файлы .cfm на самом деле закодированы как Windows-1252 и , что среда выполнения ColdFusion настроена так, чтобы ожидать этого ( Обе настройки по умолчанию в системах Windows, где я тестировал это включено. Аналогичные правила применяются к другим системам. ). ColdFusion конвертирует все строки в Unicode для внутреннего использования, поэтому, возможно, что-то сломалось в этой цепочке ожиданий в вашей настройке.

2 голосов
/ 12 ноября 2008

Я думаю, что это не столько проблема с CFMail, сколько проблема с почтовыми клиентами, которые буквально отображают коды символов в текстовых сообщениях, а не конвертируют их в соответствующие символы.

Использование CFMail в режиме HTML должно обеспечить результат, который вы ищете.

...