Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Maschere su galleria a slide

    Ciao a tutti,
    sto costruendo una galleria a slide con le immagini che vengono distribuite lungo una fascia orizzontale; queste vengono caricate da un file XML.
    Dato che la distribuzione orizzontale ora occupa tutto lo schermo orizzontalmente, volevo applicare due maschere ai lati per poter lasciare un po' di bordo libero, ma non riesco a capire come utilizzarle.

    Coem posso fare?

    Grazie!

  2. #2
    Purtroppo non riesco a risolvere il problema: quano carico le foto con as3, la machera combina disastri :/

  3. #3
    Utente di HTML.it L'avatar di Sleter
    Registrato dal
    Aug 2005
    Messaggi
    465
    Ciao

    Le immagini vengono caricate a livello 0 (a meno che non abbia dato istruzioni particolari) quindi se crei un secondo livello e lo converti in livello maschera con un rettangolo che definisce l'area visibile, vedrai solo quello che c'è sotto la maschera ovvero le tue immagini caricate da .xml.

    Se invece la maschera è creata da codice, il concetto logico è identico e devi settare la maschera a un livello superiore con lo swapChildren.

    Ciao

  4. #4
    Cavolo, questa cosa è molto interessante perché infatti non capivo come mai le immagini mi apparivano solo "oltre" la maschera".
    Come posso costruire una maschera via AS3?

  5. #5
    Utente di HTML.it L'avatar di Sleter
    Registrato dal
    Aug 2005
    Messaggi
    465
    Ciao

    Mi correggo: Non serve lo swapChildren in quanto la maschera viene applicata all'oggetto da mascherare.
    Anche se non viene definito il suo livello, questo è sempre a un livello sotto il livello maschera.

    Per creare una maschera da codice basta disegnarla con i metodi della classe graphics:

    Codice PHP:
    var maschera:Sprite = new Sprite
    maschera
    .graphics.beginFill(0x000000)
    maschera.graphics.drawRect(0,0,300,200)
    addChild(maschera); 
    In questo modo creo un rettangolo di larghezza 300 pixel e altezza 200, posizionato a x,y = 0

    Come puoi notare ho utilizzato un' istanza della classe Sprite (poteva essere una MovieClip ma non avendo bisogno di una timeline và benissimo anche una Sprite).

    Per assegnare questo rettangolo all'oggetto da mascherare basta fare:

    Codice PHP:
    oggettoDaMascherare.mask maschera 
    Un esempio con un immagine caricata dall'esterno:

    Codice PHP:
    var carico:Loader = new Loader
    carico
    .load(new URLRequest("Foto2.jpg"));

    addChild(carico);

    var 
    maschera:Sprite = new Sprite
    maschera
    .graphics.beginFill(0x000000)
    maschera.graphics.drawRect(0,0,300,200)
    addChild(maschera);

    carico.mask maschera 
    ciao

  6. #6
    Fantastico!
    Provo e ti faccio sapere.
    Sei stato gentilissimo!

  7. #7
    Ho provato giusto poco fa e...è perfetta!
    Grazie ancora!!

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.