Свойства отображения объектов HTMLLoader

Adobe AIR 1.0 и более поздних версий

Объект HTMLLoader наследует свойства отображения класса Sprite в Adobe® Flash® Player. Например, можно изменить размер объекта, переместить или скрыть его, а также изменить цвет фона объекта. Можно также применить дополнительные эффекты: фильтры, маски, масштабирование и поворот. В случае применения эффектов следует учитывать их влияние на удобочитаемость. При применении некоторых эффектов содержимое SWF и PDF, загруженное на страницу HTML, может не отображаться.

Окна HTML содержат объект HTMLLoader, отвечающий за визуализацию содержимого HTML. Этот объект ограничен площадью окна, поэтому изменение размеров, положения, угла поворота или масштаба не всегда приводит к желаемым результатам.

Основные свойства отображения

Основные свойства отображения HTMLLoader позволяют расположить элемент управления внутри родительского экранного объекта, установить размер, отобразить или скрыть элемент управления. Не следует изменять эти свойства для объекта HTMLLoader окна HTML.

В число основных свойств входят следующие:

Свойство

Примечания

x , y

Располагает объект внутри родительского контейнера.

width , height

Изменяет размеры области отображения.

visible

Управляет видимостью объекта и его содержимого.

За пределами окна HTML свойства width и height объекта HTMLLoader по умолчанию установлены на 0. Ширину и высоту необходимо задать до того, как будет видимо содержимое HTML. Содержимое HTML подгоняется под размер HTMLLoader в соответствии со свойствами HTML и CSS содержимого. При изменении размера HTMLLoader содержимое загружается повторно.

При загрузке содержимого в новый объект HTMLLoader (со свойством width , установленным на 0) возникает соблазн задать свойства width и height объекта HTMLLoader при помощи свойств contentWidth и contentHeight . Такой метод работает для страниц с достаточной минимальной шириной, если они развернуты в соответствии с правилами HTML и спецификации CSS. Однако некоторые страницы имеют длинный и узкий макет из-за отсутствия достаточной ширины, обеспечиваемой объектом HTMLLoader.

Примечание. При изменении ширины и высоты объекта HTMLLoader значения scaleX и scaleY не изменяются, как в случае с большинством других типов экранных объектов.

Прозрачность содержимого HTMLLoader

Свойство paintsDefaultBackground объекта HTMLLoader, которое по умолчанию имеет значение true , задает непрозрачный фон объекта HTMLLoader. Если свойство paintsDefaultBackground имеет значение false , фон прозрачный. Контейнер объектов отображения или другие экранные объекты, расположенные под объектом HTMLLoader, видимы за элементами основного фона содержимого HTML.

Если для элемента основной части документа HTML или другого его элемента задан фоновый цвет (с использованием style="background-color:gray" , например), то фон этой части документа HTML непрозрачный и отображается с заданным фоновым цветом. Если задать свойство opaqueBackground объекта HTMLLoader при свойстве paintsDefaultBackground установленным на false , то цвет, заданный для свойства opaqueBackground , становится видимым.

Примечание. Можно использовать прозрачную графику формата PNG для применения к элементу документа HTML полупрозрачного фона. Установка стиля непрозрачности для элемента HTML не поддерживается.

Масштабирование содержимого HTMLLoader

Избегайте изменения масштаба объекта HTMLLoader выше коэффициента 1.0. Текст содержимого HTMLLoader отображается при определенном разрешении и при увеличении масштаба объекта HTMLLoader выглядит пикселизированным. Во избежание масштабирования объекта HTMLLoader, а также его содержимого, при изменении размера окна установите свойство scaleMode объекта Stage на значение StageScaleMode.NO_SCALE .

Примечания по загрузке содержимого SWF или PDF на страницу HTML

Содержимое SWF и PDF, загруженное в объект HTMLLoader, исчезает при следующих условиях:

  • При масштабировании объекта HTMLLoader выше или ниже коэффициента 1.0.

  • При установке свойства alpha объекта HTMLLoader на значение, отличное от 1.0.

  • При вращении содержимого HTMLLoader.

Содержимое снова отобразится при удалении проблемного значения свойства и активных фильтров.

К тому же, среда выполнения не может отображать содержимое PDF в прозрачных окнах. Среда выполнения отображает содержимое SWF, внедренное в страницу HTML, только когда параметр wmode объекта или тега внедрения принимает значение opaque или transparent . Так как для wmode по умолчанию используется значение window , то содержимое SWF не отображается в прозрачных окнах до принудительного изменения значения параметра wmode.

Примечание. В версиях до AIR 1.5.2 внедренное на страницу HTML содержимое SWF не отображалось, даже если параметр wmode принимал необходимое значение.

Дополнительную информацию о загрузке подобного материала в HTMLLoader см. в разделах Вложение SWF-содержимого в HTML и Добавление PDF-содержимого в приложения AIR .

Дополнительные свойства отображения

Класс HTMLLoader наследует несколько методов, которые можно использовать для специальных эффектов. В общем, использование этих эффектов для отображения HTMLLoader имеет некоторые ограничения, но они полезны для создания переходов и других временных эффектов. Например, при отображении диалогового окна для ввода данных пользователем можно применить размытие к отображению основного окна, пока пользователь не закроет диалоговое окно. Подобным образом можно применить к отображению затухание при закрытии окна.

В число дополнительных свойств входят следующие:

Свойство

Ограничения

alpha

Может снизить удобочитаемость содержимого HTML

filters

В окне HTML внешние эффекты обрезаются краем окна

graphics

Фигуры, отрисованные при помощи графических команд, отображаются под содержимым HTML, включая фон по умолчанию. Свойство paintsDefaultBackground должно иметь значение false, чтобы отрисованные фигуры были видимы.

opaqueBackground

Не изменяет цвет фона по умолчанию. Свойство paintsDefaultBackground должно иметь значение false, чтобы этот слой цвета был видимым.

rotation

Углы прямоугольной области HTMLLoader могут быть обрезаны краем окна. Содержимое SWF и PDF, загруженное в содержимое HTML, не отображается.

scaleX , scaleY

Изображение может выглядеть пикселизированным при масштабном коэффициенте выше 1. Содержимое SWF и PDF, загруженное в содержимое HTML, не отображается.

transform

Может снизить удобочитаемость содержимого HTML. Отображение HTML может быть обрезано краем окна. Содержимое SWF и PDF, загруженное в содержимое HTML, не отображается, если преобразование включает в себя поворот, масштабирование или наклон.

Следующий пример иллюстрирует установку массива filters для размытия всего отображения HTML:

var html:HTMLLoader = new HTMLLoader(); 
var urlReq:URLRequest = new URLRequest("http://www.adobe.com/"); 
html.load(urlReq); 
html.width = 800; 
html.height = 600; 
 
var blur:BlurFilter = new BlurFilter(8); 
var filters:Array = [blur]; 
html.filters = filters;