Proprietà di visualizzazione degli oggetti HTMLLoader

Adobe AIR 1.0 e versioni successive

Un oggetto HTMLLoader eredita le proprietà di visualizzazione della classe Sprite di Adobe® Flash® Player. Potete ridimensionare, spostare, nascondere e modificare, ad esempio, il colore di sfondo. In alternativa potete applicare effetti avanzati come filtri, maschere, modifica in scala e rotazione. Quando applicate degli effetti, tenete presente il possibile impatto sulla leggibilità. Il contenuto SWF e PDF caricato in una pagina HTML non può essere visualizzato quando vengono applicati determinati effetti.

Nelle finestre HTML è presente un oggetto HTMLLoader che esegue il rendering del contenuto HTML. Questo oggetto è vincolato all'interno dell'area della finestra, quindi la modifica delle dimensioni, della posizione, della rotazione o del fattore di scala non produce sempre risultati desiderabili.

Proprietà di visualizzazione di base

Le proprietà di visualizzazione di base di HTMLLoader consentono di posizionare il controllo all'interno dell'oggetto di visualizzazione principale, di impostare le dimensioni e di visualizzare o nascondere il controllo. Evitate di modificare queste proprietà per l'oggetto HTMLLoader di una finestra HTML.

Le proprietà di base comprendono:

Proprietà

Note

x , y

Inserisce l'oggetto all'interno del relativo contenitore principale.

width , height

Modifica le dimensioni dell'area di visualizzazione.

visible

Controlla la visibilità dell'oggetto e dell'eventuale contenuto al suo interno.

Al di fuori di una finestra HTML, il valore predefinito delle proprietà width e height di un oggetto HTMLLoader è 0. Per poter visualizzare il contenuto HTML caricato, dovete impostare la larghezza e l'altezza. Il contenuto HTML viene disegnato in base alle dimensioni di HTMLLoader e disposto secondo le proprietà HTML e CSS nel contenuto. La modifica delle dimensioni di HTMLLoader comporta la ridisposizione del contenuto.

Quando caricate del contenuto in un nuovo oggetto HTMLLoader (con la proprietà width impostata su 0), potreste essere tentati di impostare le proprietà di visualizzazione width e height di HTMLLoader utilizzando le proprietà contentWidth e contentHeight . Questa tecnica funziona per le pagine che, una volta disposte in base alle regole del flusso HTML e CSS, presentano una larghezza minima adeguata. Tuttavia, in assenza di una larghezza adeguata specificata mediante HTMLLoader, alcune pagine vengono disposte con un layout stretto e lungo.

Nota: quando modificate la larghezza e l'altezza di un oggetto HTMLLoader, i valori scaleX e scaleY non vengono modificati come avverrebbe con la maggior parte degli altri tipi di oggetti di visualizzazione.

Trasparenza del contenuto di HTMLLoader

La proprietà paintsDefaultBackground di un oggetto HTMLLoader, che è true per impostazione predefinita, determina se l'oggetto HTMLLoader disegna uno sfondo opaco. Quando paintsDefaultBackground è false , lo sfondo è trasparente. Il contenitore di oggetti di visualizzazione o altri oggetti di visualizzazione al di sotto dell'oggetto HTMLLoader sono visibili dietro gli elementi di primo piano del contenuto HTML.

Se l'elemento del corpo o qualsiasi altro elemento del documento HTML specifica un colore di sfondo (usando ad esempio style="background-color:gray" ), lo sfondo di quella parte del contenuto HTML risulta opaco e ne viene eseguito il rendering con il colore di sfondo specificato. Se impostate la proprietà opaqueBackground dell'oggetto HTMLLoader, e paintsDefaultBackground è false , il colore impostato per opaqueBackground risulta visibile.

Nota: potete usare un elemento grafico trasparente in formato PNG per fornire uno sfondo alfa sfumato per un elemento in un documento HTML. L'impostazione di uno stile di opacità per un elemento HTML non è supportato.

Modifica in scala del contenuto di HTMLLoader

Evitate di modificare in scala un oggetto HTMLLoader oltre un fattore di scala di 1.0. Il rendering del testo nel contenuto di HTMLLoader viene eseguito con una risoluzione specifica e risulta pixelizzato se l'oggetto HTMLLoader viene ingrandito in scala. Per impedire la modifica in scala di HTMLLoader, e del relativo contenuto, quando una finestra viene ridimensionata, impostate la proprietà scaleMode dello stage su StageScaleMode.NO_SCALE .

Considerazioni relative al caricamento di contenuto SWF o PDF in una pagina HTML

Il contenuto SWF e PDF caricato in un oggetto HTMLLoader non viene visualizzato nelle seguenti condizioni:

  • Modificate in scala l'oggetto HTMLLoader oltre un fattore di 1.0.

  • Impostate la proprietà alpha dell'oggetto HTMLLoader su un valore diverso da 1.0.

  • Ruotate il contenuto di HTMLLoader.

Il contenuto viene visualizzato di nuovo se rimuovete l'impostazione errata della proprietà e i filtri attivi.

Inoltre, il runtime non è in grado di visualizzare il contenuto PDF nelle finestre trasparenti, ma solo in una pagina HTML quando il parametro wmode dell'oggetto o del tag incorporato è impostato su opaque o transparent . Poiché il valore predefinito di wmode è window , il contenuto SWF non viene visualizzato in finestre trasparenti a meno che il parametro wmode non venga impostato in modo esplicito.

Nota: nelle versioni precedenti a AIR 1.5.2, il contenuto SWF incorporato in HTML non poteva essere visualizzato a prescindere dal valore wmode utilizzato.

Per ulteriori informazioni sul caricamento di questi tipi di contenuto multimediale in un HTMLLoader, consultate Incorporamento del contenuto SWF nel contenuto HTML e Aggiunta di contenuto PDF in AIR .

Proprietà di visualizzazione avanzate

La classe HTMLLoader eredita diversi metodi che potete usare per gli effetti speciali. In generale, questi effetti presentano limitazioni se vengono usati con l'oggetto di visualizzazione HTMLLoader, ma possono risultare utili per transizioni o altri effetti temporanei. Se, ad esempio, visualizzate una finestra di dialogo per raccogliere l'input dell'utente, potete fare in modo che la visualizzazione della finestra principale risulti sfocata finché l'utente non l'avrà chiusa. In modo analogo, potete applicare alla visualizzazione una dissolvenza in uscita quando la finestra viene chiusa.

Le proprietà di visualizzazione avanzate includono:

Proprietà

Limitazioni

alpha

Può ridurre la leggibilità del contenuto HTML

filters

In una finestra HTML, gli effetti esterni vengono troncati dal bordo della finestra

graphics

Le forme disegnate con comandi di grafica vengono visualizzate sotto al contenuto HTML, ivi compreso lo sfondo predefinito. La proprietà paintsDefaultBackground deve essere false per rendere visibili le forme disegnate.

opaqueBackground

Non modifica il colore dello sfondo predefinito. La proprietà paintsDefaultBackground deve essere false per rendere visibile questo livello di colore.

rotation

Gli angoli dell'area rettangolare di HTMLLoader può essere ritagliata dal bordo della finestra. Il contenuto SWF e PDF caricato nel contenuto HTML non viene visualizzato.

scaleX , scaleY

La visualizzazione di cui è stato eseguito il rendering può apparire pixelizzata se usate fattori di scala maggiori di 1. Il contenuto SWF e PDF caricato nel contenuto HTML non viene visualizzato.

transform

Può ridurre la leggibilità del contenuto HTML. La visualizzazione HTML può essere ritagliata dal bordo della finestra. Il contenuto SWF e PDF caricato nel contenuto HTML non viene visualizzato se la trasformazione comporta un effetto di rotazione, modifica in scala o inclinazione.

Nel seguente esempio viene illustrato come impostare l'array filters per sfocare l'intera visualizzazione 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;