Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fala galera, tudo beleza?
Seguinte pessoal, faz tempo que não fazia um site em flash, e agora que fui voltar, me deparei com uma coisa que pesquisei muito anteriormente e pensei ser impossível dentro do flash..
Estou fazendo um site para um grife de Minas e eles querem que as fotos da coleção sempre fiquem estoradas na tela. Disse-lhes que não é possível pois as fotos iriam se distorcer dependendo do tamanho dos monitores e tb da resolução configurada nos diferentes comps..
Agora, vendo o site de um concorrente do meu cliente, vi que o as fotos aumentam e diminuem conforme você mexe o tamanho do Browser.. Até ai tudo bem, o fantástico(pelo menos pra mim) é que as fotos NÃO DISTORCEM.. gostaria muito de saber como faço para colocar fotos de forma que possa redimensioná-las dessa forma e elas não distorçam..
Segue link para verem o site do qual falei acima: http://www.morenarosa.com.br
Alguém poderia me explicar como acontece isso e como posso fazer isso?
Obrigado mais uma vez pessoal!
Abraços,
Prompt
>
provavelmente ele a imgem no flash está enorme e as resoluções que são abertas sempre são menores, ou seja na verdade a foto sempre está menor que a original no flash, então diminuir provavelmente não distorce... saca?
é como se a foto estivesse 3000x2000 por exemplo, e aí como ninguém tem resolução dessa a foto sempre vai estar menor...
eu acho que é a única forma possível D:
Então cara, não sei se já fez esse teste, mas pode ver, se colocar qualquer foto dentro do flash, independente do tamanho e resolução, e diminuir o browser para ela reduzir de tamanho, ela irá ficar com uma qualidade ruim também..
Isso acontece pq o flash distorce as fotos, tanto quando aumenta, quanto quando diminui as mesmas..
Posso estar errado, mas os testes que fiz me mostraram que não é muito por esse caminho viu cara..
Mas mesmo assim vlw pela força!
Vamos ver se descobrimos como é feito pq aposto que isso é uma dúvida que muitos da galera do forum tb se interessarão.
Abraços!
Prompt
img.smoothing = true;
Pronto, se reduzida não distorce, se ampliada fica com aparência de qualidade 60;>
img.smoothing = true;
Pronto, se reduzida não distorce, se ampliada fica com aparência de qualidade 60;
Oba Irineu, tudo tranquilo?
Obrigado pela força, sua sugestão é nova, nunca tinha visto.
Porém, quanto realizei o teste, mesmo assim a foto distorceu..
O que fiz foi abrir um aquivo novo com tamanho de 1000 X 600, jogar uma foto grande dentro, colocar a instância do mc dela como img e coloquei na action:
Stage.scaleMode = "Scale";
img.smoothing = true;
Testei o redimensionamento no meu monitor de 22' e reparei que a foto, colocando ou não o smoothing = true distorce do mesmo jeito..
Devo fazer algo diferente nesse processo?
Se tiver um exemplo para mandar seria de enorme ajuda cara..
Abraços e obrigado pela ajuda!
Prompt
A imagem tem que ser muito maior do que a resolução do monitor, senão não rola, ou seja para não distorcer o redimensionamento tem que ser para menor, para maior não rola, então a sua imagem tem 1000 x 600 na resolução 1024 x 768 já vai distorcer, pois o flash não compensa os px perdidos, e outra o redimensionamento tem que ser proporcional, você vai ter que fazer um cálculo aí para isto.
Bom eu faço desta forma sempre salvo minhas imagens com 2000 width e redimensiono de acordoc om a resolução e ficam perfeitas.
Se você usar a classe BitmapData, e usar o draw com attachBitMap depois da imagem carregada, vai ajudar muito para não distorcer e nem serrilhar a imagem.
Acho que não está muito claro, quando você diz distorcer, você está falando da qualidade da imagem ou da proporção(tipo achatada)?
Tempos atraz achei uns códigos num forum gringo e adaptei.
Stage.align = "TL";
Stage.scaleMode = "noScale";
picHeight = new Object ();
picHeight = pic._height / pic._width;
picWidth = new Object ();
picWidth = pic._width / pic._height;
if ((Stage.height / Stage.width) < picHeight) {
pic._width = Stage.width;
pic._height = picHeight * pic._width;pic._height = Stage.height;
pic._width = picWidth * pic._height;
};
pic._x = Stage.width / 2;
pic._y = Stage.height / 2;
sizeListener = new Object();
sizeListener.onResize = function() {pic._width = Stage.width;
pic._height = picHeight * pic._width;pic._height = Stage.height;
pic._width = picWidth * pic._height;
};
pic._x = Stage.width / 2;
pic._y = Stage.height / 2;
}
Stage.addListener(sizeListener);para a imagem não cerrilhar aconselho colocá-la com um tamanho grande, conforme comentado anteriormente.
claro que não muito grande para não ficar pesada pra carregar.
espero que ajude
abs
provavelmente ele a imgem no flash está enorme e as resoluções que são abertas sempre são menores, ou seja na verdade a foto sempre está menor que a original no flash, então diminuir provavelmente não distorce... saca?
é como se a foto estivesse 3000x2000 por exemplo, e aí como ninguém tem resolução dessa a foto sempre vai estar menor...
eu acho que é a única forma possível D: