Domanda

Ho un filmato flash che carica le immagini in modo dinamico da un file XML. Voglio riutilizzare questo file .swf su pagine diverse, tuttavia le immagini nella pagina 1 sono tutti 400 x 200 e le immagini su page2 sono tutti 745 x 422. Quando provo a riutilizzare questo in un'altra pagina, le immagini caricate sono rattrappito (ridimensionato) -. vorrei che per abbinare che cosa è definito nella larghezza / altezza, ma ottengono scalati a seconda di come viene scalato la fase

im utilizzando un caricatore (AS3) per l'immagine che li pone su un contenitore (sprite)

slideLoader.load(new URLRequest(xmlSlideshow..image[intCurrentSlide].@src));

Ho provato rendendo la fase varie dimensioni per iniziare, ma vorrei piace essere irrelavant se possibile - cioè: 50 x 50. Poi in html larghezza / altezza verrebbe impostata sulla larghezza / altezza delle immagini di essere caricati.

Im non un mago flash in modo ti prego di perdonarmi se im non è chiaro, cercherò di dare un quadro più chiaro, se necessario.

È stato utile?

Soluzione

Un paio di cose ... in primo luogo è necessario specificare la vostra applicazione non è in scala. (Codice AS3)

stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;

Poi una volta che l'immagine viene caricata (aggiungere un listener all'oggetto slideLoader), eseguire una funzione javascript utilizzando classe ExternalInterface del flash.

ExternalInterface.call('resizeFlashMovie', slideLoader.width, slideLoader.height);

E la funzione javascript sarebbe qualcosa di simile a questo:

function resizeFlashMovie(width, height) {
    var flash = document.getElementById('yourFlashMovieId');
    flash.style.width = width+'px';
    flash.style.height = height+'px';
}

Altri suggerimenti

mi scuso non ho il codice a portata di mano, ma so che hai la possibilità di impostare un no-ridimensionare sulla tela in fase di avvio.

In teoria, è possibile passare in altezza / larghezza tramite gli attributi del tag sovrastante, hanno un non ridimensionamento sulla tela e utilizzare il passato in dimensioni per impostare le dimenions immagine.

Credo che questo sia esso:

fscommand("allowscale","false");
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top