Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 21.02.2013, 22:29
AlexLucas вне форума Посмотреть профиль Отправить личное сообщение для AlexLucas Найти все сообщения от AlexLucas
  № 1  
Ответить с цитированием
AlexLucas
[+1 05.11.12]
 
Аватар для AlexLucas

Регистрация: Feb 2011
Сообщений: 431
По умолчанию Сохранить формат отрезка текста.

Доброго времени суток.
У меня задача задать отрезку текста в TextArea нужный стиль (bold, italic, underline) и шрифт, но в то же время сохранить предыдущий, чтобы была возможность откатить.
Проблема в том, что если в выбранном отрезке есть символы с разными стилями и шрифтами, я не смогу сохранить это в один отдельный TextLayoutFormat.
Скорее всего вопрос где-то уже поднимался, но найти не могу.
Наверное , как вариант, посимвольно сохранять стиль, но создавать по TextLayoutFormat'y на символ это оверкил.
Думал html text использовать, но не знаю как я смогу нарыть html text именно для своего отрезка текста из всей той кучи тэгов. То есть как-то смогу наверное регулярками, но тоже будет очень муторно.
Может есть другие варианты попроще и получше?

Старый 21.02.2013, 23:26
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 2  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
По идее, перед применением надо
- найти и запомнить все _концы_ и _начала_ применений стилей внутри изменяемого отрезка текста (стиль, индекс)
При применении
- запомнить куда вставили новые _начала_ и _концы_ стилей
При отмене
- удалить концы и начала по запомненным индексам
- вставить запомненные старые _концы_ и _начала_.
Проблема в том что, я не работал с TextArea и не знаю, как там обращаются со стилями и вообще бывают ли они вложенными, т.е. может там что-то другое нужно.

Если говорить о простом TextField и TextFormat - то там, похоже, при применении сканировать посимвольно, сравнивать форматы - если одинаковые для соседних символов - запоминать в виде [(format1, количество символов), (format2, ...],
а перед откатом заменить все null-вые поля объектов TextFormat на дефолтные - иначе не перетрут существующие.


Последний раз редактировалось expl; 21.02.2013 в 23:42.
Старый 22.02.2013, 09:50
bifidokk вне форума Посмотреть профиль Отправить личное сообщение для bifidokk Найти все сообщения от bifidokk
  № 3  
Ответить с цитированием
bifidokk
 
Аватар для bifidokk

Регистрация: Jan 2011
Сообщений: 200
если вы знаете название старого стиля, то для htmlText сработает обычный replace()

Создать новую тему Ответ Часовой пояс GMT +4, время: 01:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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