Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

GuikO

Capturando o width da imagem carregada no mc

Recommended Posts

Ola!

JPG's sao carregados em um movie clip chamado palco.

Ao lado da JPG eh carregado um texto de um txt externo.

 

Como a largura das imagens sao diferentes, quero fazer

o texto ser carregado sempre uns 10px do fim da imagem.

 

Preciso saber como pegar o width da imagem que eh carregada

dinamicamente. Nao adianta dar palco._width claro porque ele pega

o width do palco e nao da JPG carregada.

 

Como faco pra pegar a porcaria o width da imagem!? http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif

 

isso eh que eu tinha tentado..

 

palco.loadMovie("gallery1/img"+_global.foto_atual+".jpg");descriptionBox._x = palco._x + palco._width + 10;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta assim:

 

palco.loadMovie("gallery1/img"+_global.foto_atual+".jpg");

palco.onEnterFrame = function(){

t = _root.getBytesTotal()/1024;

c = _root.getBytesLoaded()/1024;

p = int((c/t)*100);

if (c == t && c > 2) {

delete palco.onEnterFrame;

largura = palco._width;

descriptionBox._x = palco._x + largura + 10;

}

 

Se não der, chuta que é macumba!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o palco._width so retorna 0.

Ele ta retornando o width do movie clip, e nao o da imagem carregado no movie clip.

 

_root.onEnterFrame = function() {		// Changing photo; description; frame	if (palco._alpha<10) {  // Loading photo  palco.loadMovie("gallery1/img"+_global.foto_atual+".jpg");  // Loading description  loadText = new LoadVars();  loadText.load("gallery1/photo"+_global.foto_atual+".txt");  loadText.onLoad = function(success) { 	 if (success) {    descriptionBox._x = palco. _x + palco._width + 10;    descriptionBox.html = true;    descriptionBox.htmlText = palco.desc; 	 }	  }	}}
http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nossa, preciso parar de beber, negócio é o seguinte Guiko, faz assim, cria um movlieclip vario e joga ele no palco, abra ele e crie outro movieclip vazio e jogue dentro dele.

Esse movieclçip você vai instanciar de "loader", volte ao movieclip principal que devera tr esse loader dentro e de o nome de instancia pra ele de loader1.

 

agora use essa ação no frame:

 

loader1.loader.loadMovie("gallery1/img2.jpg");

onEnterFrame = function(){

t = _root.loader1.loader.getBytesTotal()/1024;

c = _root.loader1.loader.getBytesLoaded()/1024;

p = int((c/t)*100);

if (c == t && c > 1) {

delete onEnterFrame;

largura = loader1.loader._width;

trace("a largura é " + largura);

descriptionBox._x = loader._x + largura + 10;

}

}

 

O que vai acontecer é que quando ele terminar de carregar a imagem, ele vai pegar a largura da imagem e atribuir ao movielcip, assim você consegue pegar com certeza, fiz aqui e dei tudo certo, no outro exemplo coloquei pra pegar os bytes do _root, dei uma viajada pois era pra pegar o do movieclip, faz assim que vai dar certo, qquer coisa poste ai novamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

passei por coisa parecidao mais fácil é criar uma função para ficar testando o tamanho do mc a ao adaptando o outro mc(o do texto) à ele.function resize(){ z = fdofto._y + fdofto._height + 15; legenda._y = z; }Ai você cria uma condição pra executar o resize() ate que a legenda esteja ajustadaNesse caso a legenda vai ficar semre 15px abaixo da foto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.