2010-01-02 10 views
0

Bonjour, quelqu'un peut-il vous aider? J'ai deux images sur ma scène flash (Une image de caméra et une image de paysage) L'idée est que la caméra est devant le décor. Le problème est que bien que les deux images soient sur ma scène, l'appareil photo est complètement transparent et a l'air faux. Comment puis-je définir la transparence de l'image canon de sorte que ce soit une image solide sur l'image de fond. Merci d'avance pour les conseils!, MickImages jpeg transparentes dans Flash AS3

// add images 

var cannon = new mc_cannon ; 
var backGround = new mc_scene ;   


backGround.x = 200 ; 
backGround.y = 200 ; 
addChild (backGround) ; 

setChildIndex(cannon,numChildren - 1); 
cannon.alpha = 1 ; 
cannon.x = 200 ; 
cannon.y = 200 ; 
addChild (cannon) ; 

Répondre

1

Il suffit de regarder votre code, je suppose que votre code provoque une erreur d'exécution, comme vous essayez d'utiliser la méthode setChildIndex() avec un objet d'affichage qui a encore à ajouter à la scène (canon). Je ne me souviens pas d'avoir accidentellement fait cela, donc je ne suis pas sûr qu'une erreur soit effectivement jetée, mais cela serait cohérent avec d'autres erreurs de programmation liées à la liste d'affichage. Comme vous ajoutez d'abord l'arrière-plan, puis le canon, vous ne devriez pas avoir à utiliser setChildIndex() du tout. Le canon sera ajouté au-dessus de l'arrière-plan.

En outre, vous parlez d'images JPEG transparentes, quelque chose qui (bien qu'il existe dans un ajout à la spécification JPEG) n'est presque jamais utilisé. Vous devez utiliser des images PNG pour les images bitmap transparentes. Ensuite, dans Flash CS4, définissez la compression de l'image importée sur "Photo (JPEG)", et elle sera codée par Flash en JPEG, tout en conservant la transparence.

Si la suppression de setChildIndex() ne vous aide pas et que vous êtes en mesure d'importer le canal alpha dans vos images, je trouve vraiment difficile d'imaginer quel pourrait être le problème. Pourriez-vous peut-être fournir une capture d'écran de la caméra étant "complètement transparent" et "regarder tout faux"?

Acclamations

+0

Merci pour votre réponse, Il n'y a pas d'erreur avec ce code. Voici un lien vers l'image http://img24.imageshack.us/img24/4480/camerakr.jpg Je ne veux pas de transparence juste une image solide d'une caméra sur la bande de fond. Merci pour votre aide de toute façon! – Mick

+0

Etes-vous sûr que l'élément d'image (PNG/JPEG) que vous utilisez n'est pas transparent? Et avez-vous également vérifié que le contenu du symbole mc_cannon n'est pas transparent dans Flash CS4? – richardolsson

+0

Btw, j'ai été intrigué par votre affirmation qu'aucune erreur n'est signalée par votre code, j'ai donc créé mon propre cas de test. En cours d'exécution du code qui est équivalent à la vôtre, je reçois "ArgumentError: Erreur # 2025: Le DisplayObject fourni doit être un enfant de l'appelant." à cause de l'appel setChildIndex(). Etes-vous sûr que vous n'obtenez pas cette trace d'erreur dans la fenêtre de sortie? À votre santé – richardolsson