Приветствую!
Очень надеюсь на вашу помощь. Долго мучаюсь с одной проблемой. Суть заключается в следующем. После этапа загрузки ХТМЛ контента, я загружаю его в текстовое поле и пытаюсь преобразовать его в битмап при помощи метода Draw. Но при этом не отображаются картинки. Если это сделать несколько позже (к примеру по нажатию кнопки), то все работает как надо. Из этого можно сделать вывод, что на момент вызова Draw, они еще не подгрузились. При помощи метода getImageReference(), можно получить указатель на Loader этой картинки. Но повесив на него обработчик события на окончание загрузки ничего не получил (оно не срабатывает). Да к тому же придется работать с большим количеством контента и лопатить его для расстановки id очень не хочется.
Помогите разобраться пожалуйста!
Для иллюстрации ситуации написал небольшой код:

Код:
package Scripts{
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.text.StyleSheet;
public class Main extends MovieClip{
var TF:TextField;
public function Main(){
// Загружаем страницу
var loader:URLLoader;
loader = new URLLoader();
loader.addEventListener(Event.COMPLETE, HTMLLoaded);
var request:URLRequest = new URLRequest("Page.html");
loader.load(request);
function HTMLLoaded(evt:Event){
GetBitmapButton.addEventListener(MouseEvent.CLICK, onGetBitmapButtonClick);
// Создаем тексстовое поле для страницы
TF = new TextField();
TF.border = true;
TF.width = 350;
TF.height = 500;
TF.x = 10;
TF.y = 10;
TF.wordWrap = true;
TF.antiAliasType = "NORMAL"
TF.htmlText = loader.data;
addChild(TF);
// Создаем битмап из текстового поля (так не работает)
/*var bmd:BitmapData = new BitmapData(350,500);
bmd.draw(TF);
var bm:Bitmap = new Bitmap(bmd);
addChild(bm);
getChildAt(1).x = 360;
getChildAt(1).y = 10; */
}
}
public function onGetBitmapButtonClick(evt:MouseEvent){
// Создаем битмап из текстового поля
var bmd:BitmapData = new BitmapData(350,500);
bmd.draw(TF);
var bm:Bitmap = new Bitmap(bmd);
addChild(bm);
getChildAt(1).x = 360;
getChildAt(1).y = 10;
}
}
}
Вот архив: