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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.11.2012, 20:24
uchenik12345 вне форума Посмотреть профиль Отправить личное сообщение для uchenik12345 Найти все сообщения от uchenik12345
  № 1  
Ответить с цитированием
uchenik12345

Регистрация: Jul 2009
Сообщений: 101
По умолчанию textAlign у textFlow

Как узнать align у конктртно выделенного куска текста в TLFTextField?

делаю
Код AS3:
var tr:TextRange = new TextRange(textFlow, textFlow.interactionManager.absoluteStart, textFlow.interactionManager.absoluteEnd);
var attr:ITextLayoutFormat = textFlow.interactionManager.getCommonCharacterFormat(tr);
trace(attr.textAlign);
trace(attr.fontSize);
показывает правильно fontSize, lineHeight, color и т.д. a вот textAlign всегда undefined.
Почему?

Изначально тексту align указывается:
Код AS3:
var tf:TextLayoutFormat = new TextLayoutFormat();
tf.textAlign = TextAlign.CENTER;
// eshe fotmatting....
var t:TLFTextField = new TLFTextField();	
t.htmlText = some_text;
var textFlow:TextFlow = t.textFlow;
textFlow.hostFormat = tf;

Старый 19.11.2012, 14:15
AlexLucas вне форума Посмотреть профиль Отправить личное сообщение для AlexLucas Найти все сообщения от AlexLucas
  № 2  
Ответить с цитированием
AlexLucas
[+1 05.11.12]
 
Аватар для AlexLucas

Регистрация: Feb 2011
Сообщений: 431
Если у всего выделения один и тот же textAlign, должно выдать вам конкретное направление
Код AS3:
var curFormat:TextLayoutFormat = new TextLayoutFormat();
curFormat = textField.getFormatOfRange();
trace(curFormat.textAlign);

Старый 19.11.2012, 16:44
uchenik12345 вне форума Посмотреть профиль Отправить личное сообщение для uchenik12345 Найти все сообщения от uchenik12345
  № 3  
Ответить с цитированием
uchenik12345

Регистрация: Jul 2009
Сообщений: 101
A к чему прикрутить getFormatOfRange() ?

если TLFtextfield-у или textFlow или textFlow.interactionManager или TLF as TextFeild то получаю error:
Call to a possibly undefined method getFormatOfRange through a reference with static type fl.text:TLFTextField. (или другой).

Старый 29.11.2012, 03:22
uchenik12345 вне форума Посмотреть профиль Отправить личное сообщение для uchenik12345 Найти все сообщения от uchenik12345
  № 4  
Ответить с цитированием
uchenik12345

Регистрация: Jul 2009
Сообщений: 101
Так что, никто не знает? Проблема актуальная.
Только не для flex-a.

Добавлено через 50 минут
Решил так:
Код AS3:
var tr:TextRange = new TextRange(textFlow, 0, 5);
var selRange:ElementRange = ElementRange.createElementRange(tr.textFlow, tr.absoluteStart, tr.absoluteEnd);
            var leaf:FlowLeafElement = selRange.firstLeaf;
            var attr2:TextLayoutFormat = new TextLayoutFormat(leaf.computedFormat);
Но теперь проблема как задать textAlign именно selection-у?
ApplyFormatOperation не делает textAlign выделению.

Добавлено через 19 часов 10 минут
Точнее задавать то он задается, т.е. если сделаю одной строчке align left, второй align right и так далее, и потом смотрю на selection, то говортит правильно, там-то left, там-то right, но вот выглядит все совершенно от этого независимо, то есть как у всего параграфа стоит так и есть. Все эти заданные алигны просто игнорируются.
Как сделать несколько textAlign-oв в одном textFlow? Типа первая строчка вправо, вторая влево, третья посередине и так далее. Каждая не зависит от предедущей.

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

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

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


 


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


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