Я занимаюсь веб-сервисом, который должен будет создавать/манипулировать богатым текстом, используемым клиентом в Windows/DotNet RichTextBox. Пользователи сервиса будут со всего мира.RichTextBox Глобализация
Служба принимает строку, предоставленную клиентом RichTextBox.Rtf, выполняет некоторые манипуляции и возвращает строку клиенту, который помещается обратно в поле Rtf текстового поля.
работает нормально, но у меня есть некоторые опасения по поводу глобализации, например ..
Пустой RichTextBox на моей машине Dev имеет в .rtf, как:
{\rtf1\ansi\ansicpg1252\deff0\deflang1044{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}
\viewkind4\uc1\pard\f0\fs17\par
}
Когда создается новая запись, сервис должен предоставить некоторый текст, отформатированный по умолчанию. Я предполагаю, что кто-то, у которого есть другой язык при установке ОС, будет иметь другой шрифт, ansicodepage и deflang для пустого RichTextBox по умолчанию. Так что я нашел, что я могу предоставить следующую строку для новой записи, не получив исключение формата ...
{\rtf1\ansi\viewkind4\uc1\pard\f0\fs17 MyTextGoesHere\par}
После установки RichTextBox.Rtf к вышесказанному, то я инспектировать в .rtf и найти это повторно шрифт и deflang ниже ...
{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}\viewkind4\uc1\pard\lang1044\f0\fs17 MyTextGoesHere\par}
Вопросы:
1> должен ли я беспокоиться об этом, или я должен держать зачистки его на моей службе?
2> Безопасно ли это исключить? Будут ли клиенты по-прежнему использовать символы с их языка в тексте?
3> Будет ли это совместимо на разных языках? Если я рассмотрю richtext, используя OS/Language, отличный от другого пользователя, будет ли он выглядеть нормально?
Любые рекомендации или указатели?
* Очень * непонятно, почему вы беспокоитесь о шрифтах. Это просто разметка, которая влияет на * форматирование * текста, а не на * значение * текста. Форматирование предназначено для глаз человека, а не для машин. Наверняка, ваше обслуживание заботится только об информации, закодированной в тексте, а не о том, как она выглядит? Даже если вы передаете RTF, вы все равно будете использовать свойство Text на принимающей стороне, чтобы узнать, что это значит. Или вы просто не беспокоитесь и не передадите текст. –
Я в основном обеспокоен тем, что просмотр клиентом текста, созданный другим пользователем с другим языком, получит какое-то исключение формата при попытке его просмотреть. Второе беспокойство заключается в том, что он будет выглядеть как полный мусор и подумать, что что-то не так с моим сервисом/приложением. – Dorf
Не будет никаких исключений в формате, каждый использует те же RTB и RTF. Он будет выглядеть как китайский для него. –