2010-07-13 4 views
0

Je tente de charger du code HTML à partir de l'API du blog Shopify dans un TextField dans Flash. Le problème est que Shopify n'ajoute pas d'attributs de largeur et de hauteur aux images qui sont dans les billets de blog. Lorsque je les charge dans Flash, la largeur et la hauteur de l'image sont ignorées et la hauteur de TextField est incorrecte, ce qui dévisse ma barre de défilement entre autres choses.Utilisation de la balise img dans un TextField AS3 sans les attributs width et height

Est-il possible de lire la largeur et la hauteur des images lors du chargement? Je pourrais peut-être faire ça avec PHP avant de pouvoir l'utiliser, mais je ne sais pas comment.

Répondre

0

Je ne suis pas sûr de votre question initiale sur l'obtention de l'information sur l'image en flash, mais en PHP ce ne serait pas très difficile, bien que cela ralentirait quelque peu le processus.

Étape 1: Configurez un proxy PHP que vous appelez depuis votre flash. Étape 2: Dans votre proxy PHP, après avoir saisi le code HTML, bouclez tous les balises img. (Vous pouvez le faire facilement, par exemple avec PHP Simple HTML DOM)

Étape 3: Pendant la lecture en boucle, si les dimensions de l'image sont manquantes dans l'img-tag, téléchargez l'image, vérifiez la taille de l'image et mettez à jour l'étiquette. (Aussi facile en utilisant PHP Simple HTML DOM)

Étape 4: Écho le HTML mis à jour à votre film flash.

0

Si vous utilisez le BitmapData class vous pouvez avoir accès à la largeur et la hauteur des images, ainsi qu'à d'autres propriétés et méthodes utiles.

0

si vous chargez les données d'image (URLLoader dans FlashPlayer ou FileStream dans l'air) (FileStream voulez-vous permet de le faire de manière synchrone) avec un certain effort, vous pouvez analyser la largeur et la hauteur de l'image à partir du fichier HEADER synchrone.

Si vous souhaitez afficher l'image à partir des données d'image, lancez-la sur loader.loadBytes pour qu'Adobe la décode pour vous. On dirait que vous voulez qu'il apparaisse dans le htmlText. Si vous parvenez à prendre un chemin synchrone pour obtenir toutes ces données, votre champ de texte peut prendre en compte la hauteur de l'image avant la trame suivante afin de ne pas avoir l'air agité.

Questions connexes