Это изображение иллюстрирует мое затруднительное положение:
Все символы имеют одинаковый размер, но расстояние между ними различается при представлении в элементе управления RichEdit по сравнению скогда я использую ExtTextOut.
Я хотел бы представить символы так же, как в элементе управления RichEdit (в идеале), чтобы сохранить позиции переноса.
Может кто-нибудь сказать мне:
a) Какое более правильное представление?
b) Почему элемент управления RichEdit отображает текст без пробелов между азиатскими символами?
в) Есть ли способ заставить ExtTextOut воспроизводить поведение элемента управления RichEdit при рисовании этих символов?
d) Было бы иначе, если бы я работална азиатской версии Windows?
Возможно, я настроен оптимистично, но если у кого-нибудь есть какие-либо подсказки, мне было бы очень интересно услышать.
Если это поможет:
Вот мой текст:
快的棕色狐狸跳在懶惰狗1 2 3 4 5 6 7 8 9 0
извинения перед азиатскими читателями, это просто для тестирования нашей реализации Unicode, и я даже не знаю, с какого языка взяты символы, не говоря уже о том,что-нибудь значить
Для просмотра эффекта путем вставки этих символов в элемент управления RichEdit (например,WordPad), вы можете найти, что вам нужно провести их и установить шрифт «Arial».
Полученный мной расширенный текст:
{\rtf1\ansi\ansicpg1252\deff0\deflang2057{\fonttbl{\f0\fnil\fcharset0 Arial;}}{\colortbl ;\red0\green0\blue0;}\viewkind4\uc1\pard\sa200\sl276\slmult1\lang9\fs22\u24555?\u30340?\u26837?\u33394?\u29392?\u29432?\u36339?\u22312?\u25078?\u24816?\u29399?1 2 3 4 5 6 7 8 9 0\par\pard\'a3 $$ \'80\'80\cf1\lang2057\fs16\par}
Похоже, он не содержитзначение для символа 'высота звука', которое было моей первой мыслью.