Du kan läsa in SWF-filer och bitmappar till ett textfält genom att använda taggen
<img>
på följande sätt:
<img src = 'filename.jpg' id = 'instanceName' >
Åtkomst till det inlästa innehållet ges via metoden
getImageReference()
i TextField-instansen, enligt följande:
var loadedObject:DisplayObject = myTextField.getImageReference('instanceName');
Observera däremot att SWF-filer och bilder som är inlästa på detta sätt placeras i sandlådan som motsvarar deras ursprung.
När du läser in en bildfil med hjälp av taggen
<img>
i ett textfält ges åtkomsten till data i bilden via en URL-principfil. Du kan söka efter en principfil genom att lägga till attributet
checkPolicyFile
i taggen
<img>
, enligt följande:
<img src = 'filename.jpg' checkPolicyFile = 'true' id = 'instanceName' >
När du läser in en SWF-fil med hjälp av taggen
<img>
i ett textfält kan du tillåta åtkomst till SWF-filens data via ett anrop till metoden
Security.allowDomain()
.
När du använder taggen
<img>
i ett textfält vid inläsning av en extern fil (till skillnad mot att använda klassen Bitmap inbäddad i SWF) skapas automatiskt ett Loader-objekt som underordnat till TextField-objektet. Den externa filen läses in i Loader-objektet precis som om du hade använt ett Loader-objekt i ActionScript. I det här fallet returnerar metoden
getImageReference()
Loader-objektet som skapades automatiskt. Ingen säkerhetskontroll behövs vid åtkomst av detta Loader-objekt eftersom det ligger i samma säkerhetssandlåda som anropande kod.
Däremot gäller säkerhetsreglerna när du refererar till egenskapen
content
i Loader-objektet vid åtkomst till inlästa medier. Om innehållet är en bild måste du implementera en URL-principfilen och om innehållet är en SWF-fil måste metoden
allowDomain()
anropas av koden i SWF-filen.
Adobe AIR
I programsandlådan ignoreras <img>-taggar i ett textfält för att undvika nätfiskeattacker. Kod som körs i programsandlådan har inte heller behörighet att anropa metoden
allowDomain()
.