Un objet HTMLLoader hérite des propriétés d’affichage de la classe Adobe® Flash® Player Sprite. Vous pouvez redimensionner, déplacer, masquer et changer la couleur d’arrière-plan, par exemple. Ou vous pouvez appliquer des effets avancés comme les filtres, les masques, les mises à l’échelle et la rotation. Lorsque vous appliquez des effets, évaluez l’impact sur la lisibilité. Les contenus SWF et PDF chargés dans une page HTML ne peuvent pas s’afficher lorsque certains effets sont appliqués.
Les fenêtres HTML contiennent un objet HTMLLoader qui restitue le contenu HTML. L’objet est limité à la zone de la fenêtre de sorte qu’un changement dans les dimensions, la position, la rotation ou l’échelle ne produit pas toujours les résultats escomptés.
Propriétés d’affichage de base
Les propriétés d’affichage de base de HTMLLoader vous permettent de positionner le contrôle au sein de l’objet d’affichage parent, de définir la taille et d’afficher ou masquer le contrôle. Vous ne devriez pas changer ces objets pour l’objet HTMLLoader d’une fenêtre HTML.
Les propriétés de base contiennent :
Propriété
|
Remarques
|
x
,
y
|
Positionne l’objet au sein de son conteneur parent.
|
width
,
height
|
Change les dimensions de la zone d’affichage.
|
visible
|
Contrôle la visibilité de l’objet et tout contenu qu’il possède.
|
Hors d’une fenêtre HTML, les propriétés
width
et
height
d’un objet HTMLLoader sont fixées à 0. Vous devez définir la largeur et la hauteur avant que le contenu HTML chargé ne devienne visible. Le contenu HTML est dessiné suivant la taille de HTMLLoader et disposé suivant les propriétés HTML et CSS du contenu. Un changement dans la taille de HTMLLoader redistribue le contenu.
Lors du chargement de contenu dans un nouvel objet HTMLLoader (la propriété
width
est toujours définie sur 0), il peut être tentant de définir les paramètres
width
et
height
du HTMLLoader à l’aide des propriétés
contentWidth
et
contentHeight
. Cette technique est valable pour les pages qui disposent d’une largeur minimale raisonnable lorsqu’elles sont déployées selon les règles de HTML et du flux CSS. Toutefois, en l’absence d’une largeur raisonnable fournie par le HTMLLoader, certaines pages sont intégrées en une mise en page longue et étroite.
Remarque :
lorsque vous changez la largeur et la hauteur de l’objet HTMLLoader, les valeurs scaleX et scaleY ne changent pas, comme ce serait le cas avec la plupart des autres objets d’affichage.
Transparence du contenu HTMLLoader
La propriété
paintsDefaultBackground
d’un objet HTMLLoader, qui est
true
par défaut, détermine si l’objet HTMLLoader dessine un arrière-plan opaque. Lorsque
paintsDefaultBackground
est
false
, l’arrière-plan est clair. Le conteneur de l’objet d’affichage ou les autres objets d’affichage en dessous de l’objet HTMLLoader sont visibles derrière les éléments de premier plan du contenu HTML.
Si l’élément de corps ou tout autre élément du document HTML spécifie une couleur d’arrière-plan, à l’aide de
style="background-color:gray"
, par exemple, l’arrière-plan de cette portion de HTML est alors opaque et restituée dans la couleur d’arrière-plan spécifiée. Si vous définissez la propriété
opaqueBackground
de l’objet HTMLLoader et
paintsDefaultBackground
est
false
, la couleur définie pour le
opaqueBackground
est alors visible.
Remarque :
vous pouvez utiliser une illustration transparente et au format PNG pour fournir un arrière-plan semi-transparent à un élément dans un document HTML. La définition du style d’opacité d’un élément HTML n’est pas prise en charge.
Mise à l’échelle d’un contenu HTMLLoader
Evitez la mise à l’échelle d’un objet HTMLLoader au delà d’un facteur 1.0. Le texte d’un contenu HTMLLoader est restitué à une résolution spécifique et il apparaît pixelisé si l’échelle de l’objet HTMLLoader est augmentée. Pour éviter que le HTMLLoader, ainsi que son contenu, ne soit redimensionné lorsqu’une fenêtre l’est, définissez la propriété
scaleMode
de la scène sur
StageScaleMode.NO_SCALE
.
Eléments à prendre en compte lors du chargement d’un contenu SWF ou PDF dans une page HTML
Le contenu SWF ou PDF chargé dans un objet HTMLLoader disparaît dans les conditions suivantes :
-
Si vous mettez l’objet HTMLLoader à une échelle autre que 1.0.
-
Si vous attribuez à la propriété alpha de l’objet HTMLLoader une valeur autre que 1.0.
-
Si vous faites pivoter le contenu HTMLLoader.
Le contenu réapparaît si vous retirez le paramétrage de la propriété fautive et supprimez les filtres actifs.
Par ailleurs, le moteur d’exécution ne peut pas afficher de contenu PDF dans une fenêtre transparente. Il n’affiche le contenu SWF intégré à une page HTML que si le paramètre
wmode
de l’objet ou de la balise embed est défini sur
opaque
ou
transparent
. Puisque la valeur par défaut de
wmode
est
window
, le contenu SWF ne s’affiche pas dans une fenêtre transparente, sauf si vous définissez explicitement le paramètre wmode.
Remarque :
dans les versions d’AIR antérieures à 1.5.2, le contenu SWF intégré à HTML ne s’affichait pas, quelle que soit la valeur wmode définie.
Pour plus d’informations sur le chargement de ces types de média dans un objet HTMLLoader, voir les sections
Intégration d’un contenu SWF en HTML
et
Ajout d’un contenu PDF dans AIR
.
Propriétés d’affichage avancées
La classe HTMLLoader hérite de plusieurs méthodes qui peuvent être utilisées pour des effets spéciaux. En règle générale, ces effets ont des limites lorsqu’ils sont utilisés avec l’affichage du HTMLLoader, mais ils peuvent être utiles pour les transitions ou autres effets temporaires. Par exemple, si vous affichez une fenêtre de dialogue pour rassembler les saisies de l’utilisateur, vous pourriez flouter l’affichage de la fenêtre principale jusqu’à ce que celui-ci mette fin au dialogue. De même, vous pourriez faire un fondu lors de la fermeture de la fenêtre
Les propriétés d’affichage avancées sont les suivantes :
Propriété
|
Restrictions
|
alpha
|
Peut réduire la lisibilité du contenu HTML
|
filtres
|
Dans une fenêtre HTML, les effets extérieurs sont coupés par les bords de la fenêtre
|
graphics
|
Les formes dessinées à l’aide de commandes graphiques apparaissent en dessous du contenu HTML, ainsi que l’arrière-plan par défaut. La propriété paintsDefaultBackground doit être « false » pour que les formes dessinées soient visibles.
|
opaqueBackground
|
Ne change pas la couleur de l’arrière-plan par défaut. La propriété paintsDefaultBackground doit être "false" pour que cette couche de couleur soit visible.
|
rotation
|
Les coins de la zone HTMLLoader rectangulaire peuvent être découpées par le bord de fenêtre. Le contenu SWF ou PDF chargé dans le contenu HTML n’est pas affiché.
|
scaleX
,
scaleY
|
L’affichage restitué peut apparaître pixelisé pour des échelles supérieures à 1. Le contenu SWF ou PDF chargé dans le contenu HTML n’est pas affiché.
|
transform
|
Peut réduire la lisibilité du contenu HTML L’affichage HTML peut être coupé par le bord de la fenêtre. Le contenu SWF ou PDF chargé dans le contenu HTML n’est pas affiché si la transformation implique un pivotement, un redimensionnement ou une inclinaison.
|
L’exemple suivant illustre la façon de paramétrer le tableau
filters
pour flouter l’affichage HTML au complet :
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;
|
|
|