Discussion: Animation sur fond transparent [Flash Pascal]

  1. #1
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    3 007
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 3 007
    Points : 10 843
    Points
    10 843
    Billets dans le blog
    4

    Par défaut Animation sur fond transparent

    Bonjour !

    Dans la bannière que Paul TOTH a postée ici et qu'on peut voir , il y a un bel effet de transparence qu'on ne remarque pas quand l'arrière-plan est blanc (ce qui est le cas sur le site de Paul et aussi sur le mien). En revanche, on aperçoit l'effet dans une démonstration que j'ai postée (pourvu qu'on ne l'exécute pas sur un fond blanc).

    Tout ce préambule pour demander comment on obtient une animation transparente, car je ne me souviens pas que ce point ait déjà été abordé.

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    novembre 2002
    Messages
    6 811
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : novembre 2002
    Messages : 6 811
    Points : 21 786
    Points
    21 786

    Par défaut

    Ah tient, c'est une drôle d'idée ça

    alors en fait, c'est simple mais pas supporté par tous les navigateurs, il suffit d'ajouter un paramètre dans le code HTML

    <embed type="application/x-shockwave-flash" src="flashpascal.swf" width="480" height="140" wmode="transparent"/>

    mon animation commence par dessiner un rectangle blanc qui n'est donc pas transparent, puis je joue sur _alpha pour le rendre transparent...mais en fait le fond blanc ne sert à rien, j'aurais pu tout aussi bien me contenter de jouer sur _alpha pour rendre ses enfants progressivement transparent.

    voici le code d'initialisation de cette pub:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
      fond := TFond.Create(_root, 'fond', 1);
      (*
      fond.beginFill(clWhite);
      fond.lineTo(Stage.Width, 0);
      fond.lineTo(Stage.Width, Stage.Height);
      fond.lineTo(0, Stage.Height);
      fond.endFill;
      *)
      Logo := MovieClip.Create(fond, 'logo', 2);
      Logo.attachBitmap(loadBitmap('img2'), 1);
     
      fp := MovieClip.Create(Logo, 'fp', 2);
      img := MovieClip.Create(fp, 'img', 1);
      img.attachBitmap(loadBitmap('img1'), 1, 'auto', true);
      img._x := -256/2;
      img._y := -256/2;
    en pièce jointe la version avec la portion de code ci-dessus en commentaire
    flashpascal.swf
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Produits : UPnP, RemoteOffice, FlashPascal

  3. #3
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    3 007
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 3 007
    Points : 10 843
    Points
    10 843
    Billets dans le blog
    4

    Par défaut

    Merci Paul pour le code, les explications et la pièce jointe.

    J'ai modifié la page de mon site et fait un petit exemple séparé (pièce jointe).

    En fait, si je comprends bien, avec l'option wmode="transparent", la couleur indiquée dans la directive {$BACKGROUND ...} est tout simplement ignorée.

    J'ai observé un comportement semblable en visionnant les animations dans une application Delphi (composant TFlashViewerWindow) ; mais dans ce cas même le fond de l'application est transparent, ce qui fait qu'on voit le bureau (à moins qu'on ne dessine sur toute la surface).
    Fichiers attachés Fichiers attachés

  4. #4
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    décembre 2011
    Messages
    3 007
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : décembre 2011
    Messages : 3 007
    Points : 10 843
    Points
    10 843
    Billets dans le blog
    4

    Par défaut

    Citation Envoyé par Roland Chastain Voir le message
    En fait, si je comprends bien, avec l'option wmode="transparent", la couleur indiquée dans la directive {$BACKGROUND ...} est tout simplement ignorée.
    J'ai relu avec profit ce message :

    Citation Envoyé par Paul TOTH Voir le message
    FRAME_HEIGHT, et les autres directives de compilations ne sont pas du code exécutable. Ce sont des attributs du fichier SWF qui sont traités par le player au chargement de l'animation.

    Stage.height au contraire est une donnée dynamique qui indique les dimensions actuelles de la fenêtre.

    En fait, normalement au lancement Stage.height = FRAME_HEIGHT, et quand Stage.height change le onResize est déclenché.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ecriture opaque sur fond transparent
    Par Une.Personne dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 13/03/2013, 01h10
  2. Bavure en drawtext sur fond transparent
    Par olibara dans le forum Windows Forms
    Réponses: 3
    Dernier message: 24/03/2009, 22h39
  3. Afficher une image sur fond transparent
    Par FRED.G dans le forum Windows Presentation Foundation
    Réponses: 5
    Dernier message: 10/07/2008, 16h22
  4. Probleme avec drawstring sur fond transparent
    Par kakrocq dans le forum Framework .NET
    Réponses: 5
    Dernier message: 24/05/2008, 00h00
  5. animation 3D sur fond transparent
    Par addicts dans le forum DirectX
    Réponses: 12
    Dernier message: 24/05/2006, 21h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo