On-line: PSP, tnsr2, гостей 1. Всего: 3 [подробнее..]
АвторСообщение



Пост N: 59
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 04:44. Заголовок: Word unicode-символ


Вопрос, какая функция (готовая) выводит Unicode-символ на MS Word
или надо ручками рисовать?
как представить на Hb двухбайтный символ или более...

Спасибо: 0 
ПрофильЦитата Ответить
Новых ответов нет , стр: 1 2 All [см. все]


Администратор




Пост N: 3879
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 10.09.19 08:46. Заголовок: Харбор в любом случа..


Харбор в любом случая передает в word строку в unicode
Чтобы unicode был в самом харборе, и харбор не делал бы перекорировку при присвоении

<Range>:Value := cValue

надо в программе установить кодовую страницу utf8, и строку формировать уже в этой кодировке:

cValue := Chr(n1)+Chr(n2)+...
или
cValue := I2Bin(nn) + ...

где nn - код двухбайтного символа

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 60
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 10:06. Заголовок: ­вставил все-таки: o..


*PRIVAT*

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2833
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 10:15. Заголовок: Pasha пишет надо в п..


Pasha пишет
 цитата:
надо в программе установить кодовую страницу utf8, и строку формировать уже в этой кодировке


cValue := hb_StrToUtf8( cValue [, cCodePage] )
Разве нельзя воспользоваться вторым параметром ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2834
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 10:39. Заголовок: PS не меняя страницу..


PS
не меняя страницу на utf8
cValue := hb_StrToUtf8( cValue )
должно быть достаточно для понимания wordом или нет

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 61
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 11:11. Заголовок: Word понимает CP 125..


Word понимает CP 1251 без Hb_StrToUTF8(cValue),

задача была:

Программно воткнуть текст с содержанием UNICODE символа.
К примеру, текст "Это символ Ө с кодом 04Е8"

text:="Это символ "+cSIMVOL+" с кодом 04Е8"

нужно было переменную cSIMVOL как-то представить (типа CharW() ), чтобы при вставке в Word корректно отобразился символ "Ө"
или весь текст )

в том то и дело, "стандартный текст" могу просто набрать, а "специфические символы" нужно указать код, к примеру U+04E8, но как ? реализуется в Hb ?

к примеру даже пробовал hb_strtoutf8(i2bin(1186)) получил на Word Сћ

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2835
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 12:34. Заголовок: Новичок пишет Програ..


Новичок пишет
 цитата:
Программно воткнуть текст с содержанием UNICODE символа.


hb сам переводит utf8 -> unicode, задача стоит символы ru1251 -> utf8 и потом какие то символы utf8 заменить на др. символы utf8 (нац. кодировки). Правильно понимаю ? Если да, то вроде, достаточно массив с соответствием utf8 значений
aSim := {{utf8(1251), utf8(нац. символ), ... } и по идее
cValue := hb_StrToUtf8(cValue)
AEval(aSim, {|as|, cValue := StrTran(cValue, as[1], as[2]) })
или с ф-ями поиска hb_Utf8At(), hb_Utf8Substr() и т.д.
вопрос, по мне, надо ставить страницу utf8 для работы с вордом или hb\word поймет правильно utf8 строку

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3880
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 10.09.19 16:14. Заголовок: 04Е8 - это символ из..


04Е8 - это символ из киргизского алфавита. Есть несколько вариантов.

Можно добавить в харбор 8-ми битную кодировку с привязкой ее к unicode. Тогда строковую информацию в БД и текстах программ можно будет хранить в однобайтном формате, а харбор сам будет перекодировать где нужно строки в unicode, в том числе для word.
Но для этого надо определиться, какая именно 8-ми битная кодировка используется. Варианты я давал.
При этом добавление языкового модуля даст такие приятные фичи, как правильная работа функций lower/upper.

Если не использовать 8-ми битную кодировку, то строки надо хранить в utf8 или utf16. Для этого в программе надо установить кодовую страницу по умолчанию UTF8EX или UTF16LE. Харбор опять таки автоматически будет перекодировать при необходимости строки в unicode
Для текстов программ utf8 более-менее подходит, тот же редактор far это делать умеет.
Но при этом не будет языкового модуля.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 62
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 16:21. Заголовок: Имеется текст "Э..


Имеется текст
"Это символ Ө с кодом 04Е8" CP 1251, и только символ "Ө" код U+04E8

приходится вставлять текст последовательно:

- сперва часть слова "Это символ " // без преобразования кодировки (1251)
- далее вставить символ "Ө" // oText:Range:InsertSymbol(1186,"Times New Roman",.T.) (UniCode)
- и в конце часть слова " с кодом 04Е8" // без преобразования кодировки (1251)

в таком порядке корректно отображается текст.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 63
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 16:31. Заголовок: Pasha, я о чем и спр..


Pasha, я о чем и спрашивал в начале (UTF8), 8-битная кодировка с привязкой UTF8.
Можно на примере киргизского, у них только 3 дополнительные буквы к алфавиту (6 символов).

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 64
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 16:37. Заголовок: 6 символов - Ө..


6 символов -
Ө - U+04E8
ө - U+04E9
Ң - U+04A2
ң - U+04A3
Ү - U+04AE
ү - U+04AF
Порядок следования как в кириллице, после символов ...НҢ..ОӨ..УҮ... - для индексации

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Пост N: 3881
Зарегистрирован: 23.05.05
ссылка на сообщение  Отправлено: 10.09.19 16:37. Заголовок: Так какая 8-ми битна..


Так какая 8-ми битная кодировка у вас используется ? Windows Cyrillic Asian ParaType PT-154 ?
В ней символ Ө имеет десятичный код 164, а ө - 181
остальные 2 символа надо посмотреть
Ң - U+04A2 140
ң - U+04A3 156
Ү - U+04AE 135
ү - U+04AF 137
Эта кодировка имеет распространение, или какая-то другая ? Может быть есть утвержденный стандарт ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 65
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 17:00. Заголовок: А черт его знает... ..


А черт его знает...
надо наверно взять основу 1251 (стандартной кириллицы),
для начала после символа "Я" - продолжить эти 6 символов,
в дальнейшем можно определится более точные месторасположения символов
На примере киргизского создать работоспособную вещь,
в дальнейшем можно и подключить не только среднеазиатские языки (на основе кириллицы)
к примеру башкирский имеет те же символы

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2839
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 17:18. Заголовок: Новичок пишет для на..


Новичок пишет
 цитата:
для начала после символа "Я" - продолжить эти 6 символов,
в дальнейшем можно определится более точные месторасположения символов


погуглил киргизкий алфавит, получил
 
#define HB_CP_UPPER "АБВГДЕЁЖЗИЙКЛМНҢОӨПРСТУҮФХЦЧШЩЪЫЬЭЮЯ"
#define HB_CP_LOWER "абвгдеёжзийклмнңоөпрстуүфхцчшщъыьэюя"

#define HB_CP_UPPER "АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ"
#define HB_CP_LOWER "абвгдежзийклмнопрстуфхцчшщъыьэюя"

нижние строки ru1251

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 66
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 17:19. Заголовок: я имел ввиду располо..


я имел ввиду расположение в кодовой системе 8-бит

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2840
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 17:25. Заголовок: Новичок пишет я имел..


Новичок пишет
 цитата:
я имел ввиду расположение в кодовой системе 8-бит


символы задаются в hb в utf8 кодировке без BOM, см. src\codepage\l_??.ch
нужны еще названия месяцев и дней недели в utf8, об этом говорили, когда Pasha делал LV 1257 кодировку

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 67
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 17:55. Заголовок: да пока можно постав..


да пока можно поставить русские наименования, проблем сделать отдельные функции не проблема(определения месяцев и дней недели), если будет иметь место возможность использования национальных символов.

*кстати, много используется и двух- и трех- сокращенные наименования месяцев и дней недели (типа, Янв, Фев,... ПНД, ВТР, ... ПН, ВТ, ...)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2841
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 18:11. Заголовок: Опять погуглил Год ..


Опять погуглил
 
Год у них был представлен оригинальным 12-месячным циклом: жалган куран — февраль, чын куран — март, бугу — апрель, кулжа — май, теке — июнь, баш оона — июль, аяк оона — август, тогуздун айы — сентябрь, жетинин айы — октябрь, бештин айы — ноябрь, учтун айы — декабрь и бирдин айы — январь.

язык понедельник вторник среда четверг пятница суббота воскресенье
Киргизский дүйшөмбү шейшемби шаршемби бейшемби жума ишемби жекшемби



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 2842
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 10.09.19 18:14. Заголовок: PS Осталось определи..


PS
Осталось определиться. Pasha пишет
 цитата:
Windows Cyrillic Asian ParaType PT-154 ?


клавиатура как ?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 68
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 18:36. Заголовок: *да и вообще, на дво..


*да и вообще, на дворе 21 век, век "знакомест", пора бы уже объединенные символы недель, месяцев в виде знаков.
Знаки - международный понятный язык, к примеру дорожные знаки.
Сделать к примеру, порядковый номер недели в круглых рамках, выходные в инверсии к примеру.
Дни недели ① ② ③ ④ ⑤ ➏ ➐
Месяцы Ⅰ, Ⅱ, Ⅲ, Ⅳ, Ⅴ, Ⅵ, Ⅶ, Ⅷ, Ⅸ, Ⅹ, Ⅺ, Ⅻ или ⑴ ⑵ ⑶ ⑷ ⑸ ⑹ ⑺ ⑻ ⑼ ⑽ ⑾ ⑿ ну короче тип того
*Ну вообщем понимаете, без UNICODE в дальнейшем не обойтись (не только национальные языки!)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 69
Зарегистрирован: 22.04.15
ссылка на сообщение  Отправлено: 10.09.19 18:38. Заголовок: Клава, посмотрел, дл..


Клава, посмотрел, для UTF8 используется для киргизского - правый Alt Gr + (Уу Нн Оо) соответственно

Спасибо: 0 
ПрофильЦитата Ответить
Новых ответов нет , стр: 1 2 All [см. все]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 48
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет