Affichage des propriétés des objets HTMLLoaderAdobe AIR 1.0 et ultérieur 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 baseLes 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 :
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 HTMLLoaderLa 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 HTMLLoaderEvitez 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 HTMLLe contenu SWF ou PDF chargé dans un objet HTMLLoader disparaît dans les conditions suivantes :
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éesLa 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 :
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; |
|