Я смотрю, как решать проблемы, смешивая слова, требующие чтения справа налево (например, арабский) и слов слева направо (например, английский).
Проблема, с которой мы сталкиваемся, заключается в том, что при вставке слова LTR в предложение, предназначенное для чтения в RTL (вставка английского слова в арабское предложение, например, для): английский текст правильно написан слева направо,но проблема в том, что арабская часть, которая идет после, оказывается на неправильной стороне.Суть в том, что программе, над которой я работаю, необходимо, например, вставить некоторые идентификаторы или идентификаторы объектов, которые должны оставаться на английском языке, но вставляться в локализованное предложение (в данном случае на арабском).
Комупроиллюстрируем пример, скажем, слова RTL в нижнем регистре и слова LTR в верхнем регистре.
Мой желаемый результат будет:
abc ABC efg
, но вместо этого мы получим
abc ABC gfe
Единственный способ получить правильный вывод - вставить маркеры Unicode (LTR для слева направо, PDF для Pop-Directional-Formatting, который будет отмечать его конец) до и после текста LTR:
abc {LTR} ABC {PDF} efg
Это решение, которое можно использовать, но мне было интересно, не было ли более простого способа справиться с этим автоматически?Слова RTL находятся в файлах ресурсов, в то время как английские части, как правило, поступают из вызовов Db.Есть какой-то опыт работы с этим конкретным сценарием?Спасибо!