|
|
|
Как конвертировать строку UNICODE в формат RTF?
|
|||
|---|---|---|---|
|
#18+
Как конвертировать строку UNICODE в формат RTF и обратно? Изначально стоит задача: дать возможность юзеру отредактировать UNICODE текст, хранящийся в Access, но в рамках Win98, т.е. в неUNICODE-приложении. Пытаюсь создать окно RichEdit поместить туда строку. Просто бросать на него строку WCHAR не выходит, в лучшем случае текст доходит, но теряются знаки отсутствующие в ANSI. Пробовал всё и грузил LoadLibraryA("RICHED20.DLL"); и создавал окно cs.lpszClass = "RichEdit20W";. И засылал через ::SetWindowTextW(m_hWnd, bstr);, и через StreamIn(SF_UNICODE, es); Ничего не помогло. Похоже RichEdit переводит всё сначала в ANSI. Начал руками конвертить строку UNICODE в RTF. Пишу нужные заголовки вначале, затем перевожу WCHAR в строки ANSI формата RTF, типа: (WCHAR)0x20A4 -> в "\荖". И тут не получается. Видимо, для каждого символа нужно генерировать свою кодовую и шрифт. Ну это же упариться можно!!! Пробовал и контрол MS RichEdit, бросал в него и так: RichTextBox1.TextRTF = ChrW(8356) и так RichTextBox1.Text = ChrW(8356) (в васике попробовал). И так RichTextBox1.LoadFile "unic.txt" Нихрена хорошего!! А ведь ещё и в обратку придётся конвертить. Может кто подскажет как решить траблу или где контрол нужный лежит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.04.2005, 11:47 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=407&tid=2033388]: |
0ms |
get settings: |
9ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
63ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
2ms |
| others: | 236ms |
| total: | 387ms |

| 0 / 0 |
