Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Отображение текста (http://www.flasher.ru/forum/showthread.php?t=166659)

zerAlex2 05.09.2011 04:13

Отображение текста
 
Есть какие-нибудь компоненты для нормальной работы с текстом? А то с русским даже в нужной кодировке ерунда какая-то творится... забадался перебирать варианты настроек.

КорДум 05.09.2011 09:58

TextField + чтение документации. Есть еще TLF.
Цитата:

А то с русским даже в нужной кодировке ерунда какая-то творится
Покажите пример.

zerAlex2 06.09.2011 13:20

Например, появляются пробелы между строками, где перевод каретки. Если же поставить авто-стирание пробельных символов - то htmlText не понимает </br> или <p></p>

КорДум 06.09.2011 13:23

Вы говорите про wordWrap, что ли? Приведите код, у Вас странные "замечания".

zerAlex2 07.09.2011 00:10

Код AS3:

someObject.textComp.wordWrap=true;
someObject.textComp.multiline=true;
someObject.textComp.mouseWheelEnabled=false;
someObject.textComp.htmlText=loadedText.data;

Текст отображается безобразно.

КорДум 07.09.2011 00:16

Покажите, КАК он отображается и как он ДОЛЖЕН отображаться. Вас непонятно. По кусочку кода (его нужно оформить в теги [аs3][/аs3]) ничего такого страшного и непредсказуемого.
Хотя, телепаты шепчут на ушко, Вы ожидаете, что все строчки будут одной ширины?

zerAlex2 07.09.2011 00:58

sorry... я пропустил строчку condenseWhite
Код AS3:

someObject.textComp.condenseWhite=true;
someObject.textComp.wordWrap=true;
someObject.textComp.multiline=true;
someObject.textComp.mouseWheelEnabled=false;
someObject.textComp.htmlText=loadedText.data;

Вся проблема в том, что, если condenseWhite выключен, то там, где нет перевода строки - перенос слов осуществляется нормально, а там где есть, появляется еще одна лишняя строка и смотрится это как разрыв в текстке между предложениями. Причём, даже если это <br>
Если же condenseWhite включен, то все слова прилипают друг к другу, а теги <br> не срабатывают:
Цитата:

Some text Some text<br>
Some text Some text</br>
<p>Some text Some text</p>
Но тэги при этом не отображаются :)))

А TLF это всё делает, но из-за него не загрузить по-человечески, ни функции потом вызвать... Ж... какая-то.

Код AS3:

someText=loadedText.data;
someText.replace(/[\n\r]{2}/g,"\r");
someObject.textComp.htmlText=someText;

Хм... не помогло.

Wolsh 07.09.2011 03:22

Это особенность флэша еще со времен царя Гороха. Винда при переводе строки вставляет ДВА символа - \r\n. Флэш честно "отображает" оба, т.е. делает ДВА перевода строки там, где в виндовских текстовых редакторах вы видите один. Есть два решения – сохранять сам текст в таком редакторе, который ставит "правильный" перенос (например, такая опция есть в FlashDevelop), либо обработать загруженный текст в самой флэшке, например регэкспом
Код AS3:

_string.replace(/[\n\r]{2}/g, "\r");


zerAlex2 07.09.2011 18:35

Не, не срабатывает почему-то...

Wolsh 07.09.2011 20:14

В хелп-то заглядывать надо
Код AS3:

someText=loadedText.data;
someText=someText.replace(/[\n\r]{2}/g,"\r");
someObject.textComp.htmlText=someText;



Часовой пояс GMT +4, время: 21:10.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.