Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вводится ли шрифт балтийских языков в поле, где CHARSET=


Layner ©   (2005-10-20 13:05:00) 

DEFAULT_CHARSET? А то тут проблемка вышла, человек пишет, что не может ввести в поле DEFAULT_CHARSET текст из своих национальных символов. Я проверил только что, поставил латышский язык, вводится вроде нормально, как английские буквы..


Layner   (2005-10-27 09:46:00) [1]

Prohodil Mimo ©   (23.10.05 15:56)
А как тогда пишут латышские буквы в Литве? Т.е. нац. символы не отображаются на TListBox например?


Prohodil Mimo   (2005-10-23 15:56:00) [2]

Layner ©   (23.10.05 15:05) [13]
А вообще подумал тут, для латышского языка мне главное, что бы элементы допускали его ввод


с элементами ввода проблем не будет, только установи нужный чарсет, в базе тоже язык выбери. А вот попробуй что будет если написать caption с использованием латышских букв в TRadioButton, TListBox, TCheckBox, TPageControl, TComboBox (посмотри что выпадет) :о)

А насчёт интерфейса - это тебе с заказчиком договариваться, на каком языке делать :о)


Baltika-18   (2005-10-23 15:38:00) [3]

А еще почитай про Resource dll.


Layner   (2005-10-23 15:05:00) [4]

Anatoly Podgoretsky
Prohodil Mimo
Спасибо ещё раз, на счет INI файлов.. так с ними проще.. на счет сохранения INI файла тоже понятно значит, раньше в блокноте делал, на счет TMemo как то не додумался.
А вообще подумал тут, для латышского языка мне главное, что бы элементы допускали его ввод и сохранение в БД, это я сделаю, а все хинты, диалоги, я сделаю в INI файле, но на английском, я думаю это допустимый вариант, и гораздо проще мне :)


Prohodil Mimo   (2005-10-22 23:48:00) [5]

Layner ©   (21.10.05 8:53) [3]
Буду делать тогда выбор пользователем шрифта в интерефейсах


используй Times New Roman или Arial, там точно балтийские поддержки есть.

Сам я Times New Roman использую.

и ещё тут вспомнил... не знаю, как в других версиях Delphi, но в 3 половина компонентов криво отображает местные буквы в том случае, что я выше описал в [10].

По этому тестируй программу на разных установок дефолтного чарсета для не уникода.


Prohodil Mimo   (2005-10-22 23:42:00) [6]

Prohodil Mimo ©   (22.10.05 23:41) [10]
SafeToFile.


SaveToFile :o)


Prohodil Mimo   (2005-10-22 23:41:00) [7]

Layner ©   (21.10.05 13:48) [7]

не сохраняй при помощи блокнота.
уж лучше TMemo используй, а затем SafeToFile.

Насчёт отображения символов : учти, что если в системе дефолтный чарсет будет не, к примеру Latvia, то ни в хинтах, ни в пунктах меню, ни в заголовках форм отображаться латышские буквы не будут.


Anatoly Podgoretsky   (2005-10-22 19:09:00) [8]

Layner ©   (21.10.05 13:48) [7]
Сохранять надо в ANSI

Но делать локализацию на основе INI файлов хоть и можно, но есть более удачные варианты, например встроеная в Дельфи поддержка языков.
Для перевода пользователю лучше отдать файл в вордовском формате.


Layner   (2005-10-22 18:12:00) [9]

+


Layner   (2005-10-21 13:48:00) [10]

Анатолий, ещё вас побеспокою, или кто может ответит мне, например есть INI файл, в нем название Caption, Text и т.п. всех визуальных компанентов программы. На русском я делаю без проблем, сохраняю в блокноте как ANSI. При запуске программы, программа читает файл и присваивает Caption, Text, Hint элементам программы.

Набираю также эти названия на Литовском (для теста), в Блокноте выбираю шрифт и набо символов, при сохранении блокнот говорит что надо сохранить текст в Unicode, иначе утеряются некоторые символы. Сохраняю. Но опять VCL не сможет прочитать UNICOD, как быть в таком случае, чтобы сделать интерефейс пользователя в его нац. языке + хранение всех строк в INI файле, что бы он мог подправить что нибудь по своему усмотрению.


Layner   (2005-10-21 10:43:00) [11]

Anatoly Podgoretsky ©   (21.10.05 10:23)
Спасибо за разъяснение, понял по сути вопроса, сейчас в соседней ветке пытаюсь сментить CHARSET у всех элементов формы. :)


Anatoly Podgoretsky   (2005-10-21 10:23:00) [12]

Layner ©   (21.10.05 08:53) [3]
Выбор шрифта подразумевает и смену CHARSET

Layner ©   (21.10.05 08:58) [4]
Это не возможно по определению, CHARSET это и есть одна из характеристик шрифта. А вот выбраный шрифт не поддерживает этого, надо использовать многоязычные шрифты, например Times New Roman, это большинство True Type шрифтов, но не все. Если тебе нравится Tahoma то можно и ее использовать, я лично предпочитаю Times New Roman, он есть практически на всех машинах, кроме изуродованых.
По поводу что выставлять на этапе проектирования вопрос сложный и многообразный. Если заранее известен язык, то предпочтение в пользу его CHARSET, если нет, то DEFAULT и надо прийти к понятию ЯЗЫК, а не CHARSET, это производное от языка и менять его при необходимости.
if lang RU then control.font.charset := RUSSIAN_CHARSET
else if lang EE then control.font.charset := BALTIC_CHARSET
else control.font.charset := DEFAULT_CHARSET;
Кроме того надо учесть, что VCL не поддерживают юникод, и одновременно может отображать только один набор символов, но можно оперативно менять отображения, переключая кнопкой CHARSET, у меня так и сделавно кнопка RU/EE и смена в обработчике.

Так что можешь смело делать, это проверенное решение, работает уже около 10 лет.


Layner   (2005-10-21 08:58:00) [13]

А ещё вопросик, если я меняю CHARSET на Балтийский например, шрифт в DBGrid сморю как то автоматически меняется, т.е. можно шрифт не менять, а менять CHARSET у всех элементов формы? По умолчанию, шрифт у всех элементов стоит MS Sans Serif, а у него смотрю только Кирилица есть, в выпадающем списке, а например в Tahoma, есть все наборы, т.е. лучше во всех элементах выставить CHARSET какой надо + шрифт на этапе разработки установить Tahoma?


Layner   (2005-10-21 08:53:00) [14]

Анатолий, спасибо, понятно. Буду делать тогда выбор пользователем шрифта в интерефейсах (Edit, Memo, Grid...)


Anatoly Podgoretsky   (2005-10-20 20:03:00) [15]

DEFAULT_CHARSET означает локализацию по умолчанию, а не конкретный шрифт, если у него эстонская локализация, то при включении эстонской раскладки клавиатуры он сможет ввести эстонскии буквы, а что бы они были еще и отображены, требуется чтобы и шрифт тоже их поддерживал.


Layner   (2005-10-20 15:23:00) [16]

Удалено модератором
Примечание: Создание пустых сообщений


Наверх

Титульная страница Поиск, карта сайта Написать письмо