Перевод программы на китайский язык
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5321
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 65 раз
Перевод программы на китайский язык
Я бы повесил в окна горячую клавишу, чтобы открывать системное окно с метками контролов и надписью по умолчанию, на английском и китайском. На английском проставить самому, потом отдать программу носителю китайского, чтобы свои проставил. Сохранять в какой-нибудь базе типа sqlite с ключем имя процедуры+метка контрола. Нюанс в разной ширине надписи, возможно, нужно какое-то масштабирование предусмотреть.
C6/C12, ШВС, tps/btrieve.
-
- ✯ Ветеран ✯
- Сообщения: 5190
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Перевод программы на китайский язык
Я чего-то забыл, что у китайцев иероглифы и их реально много. Без Юникода никак.
Круче, чем у Эллочки, конечно.
Игорь Столяров писал(а): 13 Июль 2025, 17:52 Игорь наверно предполагает, что каждому из 2000 иероглифов соответствует свой символ ANSII ?
Про CHARSET:CHINESEBIG5 ничего не нашёл. Может какая-то дикая упрощёнка? Существует всего 214 основных иероглифов (ключей), в принципе в 255 символов вписывается. Но это дичь, грубо говоря, словарный запас в 214 слов.Основная область китайских иероглифов в Юникоде — U+4E00…U+9FA5 (20 902 позиции). Для редко используемых символов отведена область U+20000…U+2A6D6 (42 711 позиций). Есть также несколько вспомогательных областей.

We are hard at work… for you. 

- Губин Игорь
- Шубуршун
- Сообщения: 2599
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 27 раз
Перевод программы на китайский язык
Это в Clarion. Самое простое, это сделать примитивную программу из одного окна с одним полем ввода и одним полем String для отображения ввода. Поставить везде этот Charset и посмотреть что получится.
Это я только кажусь дураком! На самом деле я полный идиот!
-
- Полимат
- Сообщения: 1830
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 28 раз
- Поблагодарили: 10 раз
Перевод программы на китайский язык
ИИ ответил
Китайские иероглифы не являются частью кодировки ASCII. ASCII предназначен для представления латинского алфавита, цифр, знаков препинания и управляющих символов. Китайские иероглифы, как и другие языки, использующие нелатинские алфавиты, требуют расширенных кодировок, таких как Unicode, для представления их полного набора символов.
Подробнее:
ASCII (American Standard Code for Information Interchange)
- это 7-битная кодировка, предназначенная для представления английского алфавита, цифр, знаков пунктуации и некоторых управляющих символов.
Китайские иероглифы, как и другие нелатинские символы, не помещаются в 7-битное пространство ASCII.
Для их представления необходимы более широкие кодировки, такие как Unicode.
Unicode
- это стандарт кодирования символов, который включает в себя символы практически всех письменных языков мира, включая китайский, японский и корейский.
UTF-8
- это одна из наиболее распространенных кодировок Unicode, которая может представлять любой символ Unicode, используя от одного до четырех байтов.
В итоге: Чтобы использовать китайские иероглифы в компьютерных системах, необходимо использовать кодировки, поддерживающие Unicode, такие как UTF-8, а не ASCII.
Китайские иероглифы не являются частью кодировки ASCII. ASCII предназначен для представления латинского алфавита, цифр, знаков препинания и управляющих символов. Китайские иероглифы, как и другие языки, использующие нелатинские алфавиты, требуют расширенных кодировок, таких как Unicode, для представления их полного набора символов.
Подробнее:
ASCII (American Standard Code for Information Interchange)
- это 7-битная кодировка, предназначенная для представления английского алфавита, цифр, знаков пунктуации и некоторых управляющих символов.
Китайские иероглифы, как и другие нелатинские символы, не помещаются в 7-битное пространство ASCII.
Для их представления необходимы более широкие кодировки, такие как Unicode.
Unicode
- это стандарт кодирования символов, который включает в себя символы практически всех письменных языков мира, включая китайский, японский и корейский.
UTF-8
- это одна из наиболее распространенных кодировок Unicode, которая может представлять любой символ Unicode, используя от одного до четырех байтов.
В итоге: Чтобы использовать китайские иероглифы в компьютерных системах, необходимо использовать кодировки, поддерживающие Unicode, такие как UTF-8, а не ASCII.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
- Игорь Столяров
- Ветеран движения
- Сообщения: 8090
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
Перевод программы на китайский язык
Отлично ! Как раз в Clarion 12 нам это и обещали !gopstop2007 писал(а): 13 Июль 2025, 19:45 В итоге: Чтобы использовать китайские иероглифы в компьютерных системах, необходимо использовать кодировки, поддерживающие Unicode, такие как UTF-8

Make Clarion Great Again ! 
- Дед Пахом
- Старичок
- Сообщения: 3306
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Перевод программы на китайский язык
Ну и я свои пять юаней добавлю:
https://github.com/mikeduglas/Unicode-aware-controls
https://github.com/mikeduglas/Extended-List-Properties
https://github.com/mikeduglas/Unicode-aware-controls
https://github.com/mikeduglas/Extended-List-Properties
С уважением, ДП
-
- Полимат
- Сообщения: 1830
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 28 раз
- Поблагодарили: 10 раз
Перевод программы на китайский язык
Сделано супер, к сожалению бюджет ограничен в 100у.е., мои риски которые могу себе позволить, даже не зная, понравится программа товарищам из Китая или нет. Пробный шар, так сказать...Дед Пахом писал(а): 13 Июль 2025, 20:31 Ну и я свои пять юаней добавлю:
https://github.com/mikeduglas/Unicode-aware-controls
https://github.com/mikeduglas/Extended-List-Properties
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- Полимат
- Сообщения: 1830
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 28 раз
- Поблагодарили: 10 раз
Перевод программы на китайский язык
Хотя есть в Clarion язык китайский, переключил на него.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5321
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 65 раз
Перевод программы на китайский язык
Среда вроде как поддерживала юникод. Она на С#.
C6/C12, ШВС, tps/btrieve.
-
- ✯ Ветеран ✯
- Сообщения: 5190
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Перевод программы на китайский язык
Искал в справке по Клариону. Сдаётся мне - тупиковый путь. Нужен же ещё и шрифт, где хотя бы есть какие-то иероглифы до 255-го символа.Губин Игорь писал(а): 13 Июль 2025, 19:24Это в Clarion. Самое простое, это сделать примитивную программу из одного окна с одним полем ввода и одним полем String для отображения ввода. Поставить везде этот Charset и посмотреть что получится.
Назрело-то давно. И разработчику дела нет до этого. На кого ориентируются? Я вот давным-давно делал с упором на Европу. Прокатило. А вот китайский не так прост.
We are hard at work… for you. 

- Губин Игорь
- Шубуршун
- Сообщения: 2599
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 27 раз
Перевод программы на китайский язык
Символы берутся из стандартных шрифтов Windows с помощью CHARSET:.kreator писал(а): 14 Июль 2025, 17:04 Искал в справке по Клариону. Сдаётся мне - тупиковый путь. Нужен же ещё и шрифт, где хотя бы есть какие-то иероглифы до 255-го символа.
Это я только кажусь дураком! На самом деле я полный идиот!
-
- Полимат
- Сообщения: 1830
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 28 раз
- Поблагодарили: 10 раз
Перевод программы на китайский язык
Шрифты Microsoft YaHei, SimSun (кодировка GB2312), они есть без дополнительных установокkreator писал(а): 14 Июль 2025, 17:04Искал в справке по Клариону. Сдаётся мне - тупиковый путь. Нужен же ещё и шрифт, где хотя бы есть какие-то иероглифы до 255-го символа.Губин Игорь писал(а): 13 Июль 2025, 19:24Это в Clarion. Самое простое, это сделать примитивную программу из одного окна с одним полем ввода и одним полем String для отображения ввода. Поставить везде этот Charset и посмотреть что получится.
...
Назрело-то давно. И разработчику дела нет до этого. На кого ориентируются? Я вот давным-давно делал с упором на Европу. Прокатило. А вот китайский не так прост.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
-
- Полимат
- Сообщения: 1830
- Зарегистрирован: 25 Март 2009, 21:55
- Благодарил (а): 28 раз
- Поблагодарили: 10 раз
Перевод программы на китайский язык
SYSTEM{prop:charset} = 134 !GB2312Губин Игорь писал(а): 14 Июль 2025, 17:12Символы берутся из стандартных шрифтов Windows с помощью CHARSET:.kreator писал(а): 14 Июль 2025, 17:04 Искал в справке по Клариону. Сдаётся мне - тупиковый путь. Нужен же ещё и шрифт, где хотя бы есть какие-то иероглифы до 255-го символа.
“Есть всего 2 типа языков: те, на которые все жалуются и те, которыми никто не пользуется.” — Бьерн Страуструп
- Губин Игорь
- Шубуршун
- Сообщения: 2599
- Зарегистрирован: 16 Сентябрь 2005, 16:35
- Откуда: Москва
- Благодарил (а): 3 раза
- Поблагодарили: 27 раз
Перевод программы на китайский язык
Код: Выделить всё
Window WINDOW('Caption'),AT(,,445,93),FONT('Arial',10,,,CHARSET:CHINESEBIG5),DOUBLE,GRAY
ENTRY(@s20),AT(13,44,405),USE(TestInput),FONT('Arial',10,,,CHARSET:CHINESEBIG5), |
IMM,#ORDINAL(1)
STRING(@s200),AT(13,17,401),USE(TestInput,,?TestInput:2),FONT('Arial',10,,FONT:bold, |
CHARSET:CHINESEBIG5),#ORDINAL(2)
END
OF ?TestInput
OF EVENT:NewSelection
! Start of "Control Event Handling, before generated code"
! [Priority 5000]
! End of "Control Event Handling, before generated code"
! Start of "Control Event Handling, after generated code"
! [Priority 4000]
Update
Display(?Testinput:2)
Работает. Только вот ввод...
Это я только кажусь дураком! На самом деле я полный идиот!
Перевод программы на китайский язык
А если в Настройках Windows -> Regional Settiings для программ без Юникода выставлен Китай вместо России может ввод и заработает?