AS3: htmlText с несколькими тегами размера шрифта? - PullRequest
2 голосов
/ 24 ноября 2010

У меня есть текстовое поле, которое получает текст из XML. Я добавил функцию для изменения размера шрифта для выделенного текста, и она работает нормально, пока я снова не загружу текст. Тогда он просто игнорирует все остальные размеры, кроме первого.

Это HTML-текст для текста:

<TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="PresentationOnline_text" SIZE="63" COLOR="#FF9999" LETTERSPACING="0" KERNING="0">a<FONT SIZE="33">b</FONT></FONT></P></TEXTFORMAT>

И я просто установил txtText.htmlText на это. Разве нельзя иметь несколько размеров шрифта в одном текстовом поле?

Когда я меняю размер, я делаю это:

textFormat = txtText.getTextFormat(start, end);
textFormat.size = Number(textFormat.size) - 1;
txtText.setTextFormat(textFormat, start, end);

Что-нибудь, по чему я скучаю?

Спасибо!

Редактировать

Работает, когда я делаю это в следующем порядке:

txtText.defaultTextFormat = textFormat;
txtText.setTextFormat(textFormat);
txtText.htmlText = text;

Но я знаю, что сделал это наоборот, по какой-то веской причине, которую я не могу вспомнить ..

1 Ответ

1 голос
/ 24 ноября 2010

Я добавил функцию для изменения размера шрифта для выделенного текста, и она работает нормально, пока я не загружу текст снова.

setTextFormat() влияет на формат текста, который уже там. Любой текст, вставленный после применения setTextFormat(), либо вручную, либо с помощью replaceSelectedText(), будет отформатирован в текстовом формате по умолчанию для текстового поля.

Чтобы установить текстовый формат по умолчанию для текстового поля, необходимо использовать свойство defaultTextFormat, предназначенное для чтения / записи.

Помогает ли эта информация?

...