Перевод ресурсов на арабский язык
От: arabic_loc  
Дата: 04.04.07 12:50
Оценка:
Здравствуйте!

Возникла необходимость перевести мою программу (С++, MFC) на арабский язык. До этого вполне успешно перевел ее на несколько 'нормальных' языков, а с арабским возникла непонятная проблема со смешанными (англо-арабскими) ресурсными строками.

Например, в файле ресурсов имеется пункт меню вида:

<арабский текст><английский текст><арабский текст> <английский текст>...

В запущенной программе смешанный (англо-арабский) пункт меню отображается криво — некоторые арабские и английские части строки непонятным образом перемешиваются! При этом, чисто арабские и чисто английские строки отображаются корректно.
Строка искажается и в обычном режиме, и в режиме right-to-left. Проблема существует и в обычной Windows с настроенной поддержкой арабского языка, и в Windows, где арабский выставлен языком по-умолчанию.

Ощущение такое, что я как-то неправильно формирую строку смешанного ресурса.. Может быть существуют какие-то специальные символы для таких случаев (чтобы строка не искажалась при выводе) или что-то еще?..

Кто-то сталкивался с подобной проблемой? Как ее можно решить?

Заранее спасибо!
Re: Перевод ресурсов на арабский язык
От: Carc Россия http://www.amlpages.com/home.php
Дата: 04.04.07 13:40
Оценка:
Здравствуйте, arabic_loc, Вы писали:

_>Здравствуйте!


_>Возникла необходимость перевести мою программу (С++, MFC) на арабский язык. До этого вполне успешно перевел ее на несколько 'нормальных' языков, а с арабским возникла непонятная проблема со смешанными (англо-арабскими) ресурсными строками.


_>Например, в файле ресурсов имеется пункт меню вида:


_><арабский текст><английский текст><арабский текст> <английский текст>...


_>В запущенной программе смешанный (англо-арабский) пункт меню отображается криво — некоторые арабские и английские части строки непонятным образом перемешиваются! При этом, чисто арабские и чисто английские строки отображаются корректно.

_>Строка искажается и в обычном режиме, и в режиме right-to-left. Проблема существует и в обычной Windows с настроенной поддержкой арабского языка, и в Windows, где арабский выставлен языком по-умолчанию.

_>Ощущение такое, что я как-то неправильно формирую строку смешанного ресурса.. Может быть существуют какие-то специальные символы для таких случаев (чтобы строка не искажалась при выводе) или что-то еще?..


_>Кто-то сталкивался с подобной проблемой? Как ее можно решить?

Не уверен, что поможет но вдруг?
Попробуй поставить в VS язык для stringtable в rc-файле Neutral...


_>Заранее спасибо!
Aml Pages Home
Re[2]: Перевод ресурсов на арабский язык
От: arabic_loc  
Дата: 04.04.07 14:22
Оценка:
Здравствуйте, Carc, Вы писали:

C>Не уверен, что поможет но вдруг?

C>Попробуй поставить в VS язык для stringtable в rc-файле Neutral...

Тык, в ресурсном файле сейчас вместе хранятся ресурсы для каждого языка (в т.ч. и stringtable) и загрузка ресурса нужного языка производится как раз по языковам атрибутам ресурса.
Re: Перевод ресурсов на арабский язык
От: ioni Россия  
Дата: 04.04.07 14:32
Оценка:
Здравствуйте, arabic_loc, Вы писали:

Как решить не знаю но арабский ввод/вывод тот еще геморрой
где то на сайте unicode.org проскакивали правила
мы когда пытались что то сделать ориенировались на MsOffice Word он вроде как привильно отбражает
(при вводе с клавиатуры курсор так и прыгает то в начало строчки то в ее конец)
Re[2]: Перевод ресурсов на арабский язык
От: arabic_loc  
Дата: 05.04.07 08:54
Оценка:
Здравствуйте, ioni, Вы писали:

I>Здравствуйте, arabic_loc, Вы писали:


I>Как решить не знаю но арабский ввод/вывод тот еще геморрой

I>где то на сайте unicode.org проскакивали правила
I>мы когда пытались что то сделать ориенировались на MsOffice Word он вроде как привильно отбражает
I>(при вводе с клавиатуры курсор так и прыгает то в начало строчки то в ее конец)

С помощью unicode.ord удалось разобраться.
Спасибо!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.