Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    ridimensionare 1 immagine


    Ciao

    ----------------------
    Dunque la mia domanda è
    come posso "ridimensionare 1 immagine che viene caricata esternamente dentro un SWF?
    ----------------------

    Mi spiego:

    - ho creato un file swf con un movie clip vuoto con istanza IMG1
    - nel codice della pagina dove inserisco il file swf ho questo
    codice:
    <param name="movie" value="contentpic.swf?img1=nome_cartella/nome_immagine.jpg" />
    Funziona tutto e l'immagine viene caricata...solo che
    il mio swf ha 1 altezza e 1 larghezza fisse...invece l'immagine ha spesso 1 altezza e una larghezza diverse dal SWF...succede così che l'immagine viene mostrata parzialmente

    Come posso ridimensionare l'immagine...esempio dando 1 altezza ed avere la larghezza modificata in proporzione^?

    ---
    Tanto...lo fanno tutti... posso farlo anche io vero?

  2. #2
    da dentro Flash tu leggerai la var img1 e poi la darai in pasto ad un loadMovie()

    bene

    creati un preload perchè solo dopo che l'immagine è caricata conosci esattamente le
    sue dimensioni

    function loadExternalClip(cosa, dove)

    var mcList:Object = new Object();
    // allo Start
    mcList.onLoadStart = function(target){
    target._alpha = 0;
    _level0.attachMovie("preloader", "preloader", _level0.getNextHighestDepth(), {_x:100, _y:100, _xscale:0});
    }
    // Durante
    mcList.onLoadProgress = function(target, bytesLoaded, bytesTotal){
    var percentuale:Number = Math.floor((bytesLoaded/bytesTotal)*100);
    _level0['preloader']._xscale = percentuale;
    }
    // al Completamento
    mcList.onLoadComplete = function(target){
    _level0['preloader'].removeMovieClip();
    ;
    }
    // Quando è pronto
    mcList.onLoadInit = function(target) {
    // in questo punto hai l'immagine alle sue vere dimensioni
    trace(target_mc._width + " | " + target_mc._height)
    // e la scala è 100%
    // puoi applicare una proporzione di ridimensionamento in base alle dimensioni del
    // container o dello Stage
    target._alpha = 100
    }


    var mcLoad:MovieClipLoader = new MovieClipLoader();
    // avvio preload
    mcLoad.loadClip(cosa, dove);
    }
    // richiamo
    loadExternalClip(img1, "myContainer")

  3. #3
    scusa ricorda che dopo aver ridimensionato l'immagine la devi rimettere in target_mc._alpha=100

  4. #4

    grazie per la risposta rempox

    devi anche sapere che sono un pochino scarso con AS
    -----------------------------------------------------
    Io il nome della immagine la metto nel codice HTML quando inserisco il file SWF
    -----------------------------------------------------
    non è che per caso ti va di darmi il codice completo di preload ?
    -----------------------------------------------------
    -----------------------------------------------------
    Le immagini le stampo da un ciclo PHP...appunto nel codice che inserisce il file SWF ovvero:
    -----------------------------------------------------
    codice:
    <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="150" height="136">
    <param name="movie" value="contentpic.swf?img1=CARTELLA/NOME_IMMAGINE.jpg" />
    <param name="quality" value="high" />
    <embed src="contentpic.swf?img1=CARTELLA/NOME_IMMAGINE.jpg" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="150" height="136"></embed>
    </object>
    -----------------------------------------------------
    A livello AC io ho 1 keyframe con solo questo codice
    codice:
    _root.pic01.loadMovie(img1)
    -----------------------------------------------------
    perchè so che quello mi legge il nome che metto nel codice e mi carica l'immagine
    -----------------------------------------------------

    ...per cui nello stage ho 2 livelli
    1 livello quella stringa di codice AC
    2 livello il movie clip vuoto
    -----------------------------------------------------

    Scusa ma sono acerbo ... dammi 1 aiutino come si fa con i bimbi

    Tanto...lo fanno tutti... posso farlo anche io vero?

  5. #5
    Ok ricomiciamo


    al posto di _root.pic01.loadMovie(img1)
    copia questo

    codice:
    // cosa = nome dell'immagine
    
    // dove = nome del clip nel quale caricare l'immagine
    
    // Funzione richiamabile
    function loadExternalClip(cosa, dove) 
    
    var mcList:Object = new Object(); 
    // allo Start 
    mcList.onLoadStart = function(target){ 
    target._alpha = 0; 
    _level0.attachMovie("preloader", "preloader", _level0.getNextHighestDepth(), {_x:100, _y:100, _xscale:0}); 
    } 
    
    // Durante 
    mcList.onLoadProgress = function(target, bytesLoaded, bytesTotal){ 
    var percentuale:Number = Math.floor((bytesLoaded/bytesTotal)*100); 
    _level0['preloader']._xscale = percentuale; 
    } 
    
    // al Completamento 
    mcList.onLoadComplete = function(target){ 
    _level0['preloader'].removeMovieClip(); 
    ; 
    } 
    
    // Quando è pronto 
    mcList.onLoadInit = function(target) { 
    // in questo punto hai l'immagine alle sue vere dimensioni
    trace(target_mc._width + " | " + target_mc._height)
    // e la scala è 100%
    // puoi applicare una proporzione di ridimensionamento in base alle dimensioni del 
    // container o dello Stage
    // ad esempio
    target_mc._xscale=50
    target_mc._yscale=50 
    target_mc._alpha = 100 
    } 
    
    
    var mcLoad:MovieClipLoader = new MovieClipLoader(); 
    // avvio preload 
    mcLoad.loadClip(cosa, dove); 
    } 
    // richiamo 
    loadExternalClip(img1, "pic01")

  6. #6
    fatto... non mi cairca l'immagine
    Tanto...lo fanno tutti... posso farlo anche io vero?

  7. #7
    Mhh questa sera provo e ti faccio sapere. A più tardi

  8. #8
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    non ho provato il codice di rempox ma mi pare ok... quindi chiedo -> il file swf viene esportato da flash almeno in versione 7 o inferiore?

  9. #9
    ops ops ops

    scrivi target o scrivi target_mc

    NON FARE COME ME ! 1000 SCUSE

  10. #10
    Te lo ripropongo xchè c'erano degli errori/dimenticanze + ORRORI

    // cosa = nome dell'immagine

    // dove = nome del clip nel quale caricare l'immagine

    // Funzione richiamabile
    function loadExternalClip(cosa, dove) {

    var mcList:Object = new Object();
    // allo Start
    mcList.onLoadStart = function(target){
    target._alpha = 0;
    _level0.attachMovie("preloader", "preloader", _level0.getNextHighestDepth(), {_x:100, _y:100, _xscale:0});
    }

    // Durante
    mcList.onLoadProgress = function(target, bytesLoaded, bytesTotal){
    var percentuale:Number = Math.floor((bytesLoaded/bytesTotal)*100);
    _level0['preloader']._xscale = percentuale;
    }

    // al Completamento
    mcList.onLoadComplete = function(target){
    _level0['preloader'].removeMovieClip();
    ;
    }

    // Quando è pronto
    mcList.onLoadInit = function(target) {
    // in questo punto hai l'immagine alle sue vere dimensioni
    trace(target._width + " | " + target._height)
    // e la scala è 100%
    // puoi applicare una proporzione di ridimensionamento in base alle dimensioni del
    // container o dello Stage
    // ad esempio
    target._xscale=50
    target._yscale=50
    target._alpha = 100
    }


    var mcLoad:MovieClipLoader = new MovieClipLoader();
    mcLoad.addListener(mcList);
    // avvio preload
    mcLoad.loadClip(cosa, dove);
    }
    // richiamo
    loadExternalClip(img1, "pic01")

    ho corretto gli errori ora dovrebbe andare, almeno a me funziona

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.