Fullscreen in Flash dal browser

Martedì 30 Ottobre, 2007

Flash ha sempre supportato la modalità a schermo interno (fullscreen) sia nel Player stand-alone che nel proiettore. Questa modalità ancor oggi viene pienamente supportata e non ha subito modifiche. Adobe ha invece recentemente introdotto la possibilità di attivare il fullscreen direttamente nei filmati visualizzati nel browser. È stata introdotta una nuova e semplice funzionalità ActionScript che lavora sia con i player stand-alone che con i player browser. Per rendere il fullscreen fuzionante bisogna operare anche lato HTML, aggiungendo un nuovo parametro allowFullScreen nei TAG <object> ed <embed>. Tutto il resto è demandato al motore interno di Flash.
Questa nuova funzionalità ha comunque alcune restrizioni che bisogna conoscere, prima tra tutte l'uso del Flash Player versione 9.0.28.0 o superiore. Inoltre, ricapitolando:

  • Sul Browser dev'essere installata la versione del Player 9.0.28.0 o superiore
  • I developer devono aggiungere un nuovo parametro allowFullScreen nei Tag <object> e <embed>. Questo parametro è impostato normalmente a false e non permette il fullscreen. Per permettere il fullscreen bisogna esplicitamente impostarlo a true.
  • Un Box di dialogo verrà mostrato quando si entra in modalità fullscreen e indicherà all'utente come uscire da tale modalità. Questo Box sarà visibile per pochi secondi, passati i quali scomparirà da solo.
  • L'attivazione del fullscreen da ActionScript può avvenire solo in risposta di un click del mouse o tramite la pressione di un tasto, qualsiasi altra modalità verrà ignorata in ActionScript 2.0 e scatenera una eccezione throw in ActionScript 3.0.
  • Durante la modalità di fullscreen non è possibile utilizzare la tastiera. L'utente finale non può quindi inserire o modificare testi. L'unica risposta alla tastiera è riservata alla combinazione di tasti usata per uscire dalla modalità di fullscreen (la pressione del tasto ESC)

Codice ActionScript

Il codice necessario per impostare il fullscreen è semplicissimo e sfrutta l'oggetto Stage discusso su questo Blog in StageExt Class: filmati ridimensionabili in Flash:

Actionscript:
  1. Stage["displayState"] = "fullScreen";

Nota: si potrebbe scrivere anche:

Actionscript:
  1. Stage.displayState = "fullScreen";

I due modi sono del tutto equivalenti e permessi da ActionScript che tratta le proprietà di un oggetto come chiavi indicizzate di un array. Usare la chiave array elimina i problemi durante la compilazione in precedenti versioni di Flash.

Codice HTML

Anche il codice HTML è disarmante, basta aggiungere nel tag <object>:

HTML:
  1. <param name="allowFullScreen" value="true" />

e nel tag <embed> l'attributo:

HTML:
  1. allowFullScreen="true"

Ovvero:

HTML:
  1. <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
  2.  codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,18,0"
  3.  width="600"  height="400" id="fullscreen" align="middle">
  4. <param name="allowFullScreen" value="true" />
  5. <param name="movie" value="fullscreen.swf" />
  6. <param name="bgcolor" value="#333333" />
  7. <embed src="fullscreen.swf" allowFullScreen="true" bgcolor="#333333" width="600" height="400"
  8.  name="fullscreen" align="middle" type="application/x-shockwave-flash"
  9.  pluginspage="http://www.macromedia.com/go/getflashplayer" />
  10. </object>

Ulteriori informazioni

Vedi Exploring full-screen mode in Flash Player 9

Post correlati

Un commento a: “Fullscreen in Flash dal browser”

  1. getAvatar 1.0 Domenica 09 Dicembre, 2007 alle 16:52
    upnews.it ha detto:

    undolog » Blog Archive » Fullscreen in Flash dal browser…

    Flash ha sempre supportato la modalità a schermo interno (fullscreen) sia nel Player stand-alone che nel proiettore. Questa modalità ancor oggi viene pienamente supportata e non ha subito modifiche. Adobe ha invece recentemente introdotto la possibil…

Lascia un commento

TAG XHTML permessi: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Usa <pre> per racchiudere codice