Toon posts:

[Flash] image resize

Pagina: 1
Acties:

Verwijderd

Topicstarter
Met het onderstaande script wil ik afbeeldingen schalen Deze afbeeldingen worden ingeladen uit een xml pagina. Op het moment dat ik mijn script meerdere malen aanroep wordt alleen het laatste plaatje geschaald, de plaatjes zijn wel allemaal zichtbaar.

code:
1
resize("http://***.**/***/cms-media/logos/animlogo.jpg", "mc1", 30, 30, 5, 335, _global.depth);


Gebruik ik om mijn script aan te roepen.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function resize(img, name, dest_height, dest_width, x, y, depth) {
 _level0.createEmptyMovieClip(name, depth);
 _level0[name].loadMovie(img);
 _level0.onEnterFrame = function() {
  if (_level0[name]._height>=dest_height) {
   // aspect ratio
   ar = dest_height/_level0[name]._height;
   dest_width = _level0[name]._width*ar;
   dest_height = _level0[name]._height*ar;
   _level0[name]._width = dest_width;
   _level0[name]._height = dest_height;
   _level0[name]._x = x;
   _level0[name]._y = y;
   delete _level0.onEnterFrame;
  } else if (_level0[name]._width<_level0[name]._width) {
   // aspect ratio 
   ar = _level0[name]._width/_level0[name]._width;
   dest_height = _level0[name]._height*ar;
   _level0[name]._width = dest_width;
   _level0[name]._height = dest_height;
   _level0[name]._x = x;
   _level0[name]._y = y;
   delete _level0.onEnterFrame;
  }
 };
}
//resize logo (img, name, dest_height, dest_width, x, y, depth)
_global.depth = 1;
resize("http://***.**/lov/cms-media/logos/animlogo.jpg", "mc1", 30, 30, 5, 335, _global.depth);
_global.depth = (_global.depth+1);
resize("http://***.**.nl/lov/cms-media/panden/broek10.jpg", "mc2", 132, 200, 177, 177, _global.depth);
_global.depth = (_global.depth+1);
resize("http://***.**/lov/cms-media/fotos/test.jpg", "mc3", 185, 263, 267.4, 60, _global.depth);

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

volgens mij kan je maar 1 onEnterFrame functie tegelijk toekennen aan _level0. Je overschrijft dus telkens de onEnterFrame-functie, zodat uiteindelijk alleen de laatste overblijft. Die verschaalt dan het laatste plaatje.

  • tie-rep
  • Registratie: Oktober 2001
  • Laatst online: 19-02 15:56

tie-rep

nu met ir. !

beetje kromme code?!

Is volgens mij handiger om wat meer structuur erin te maken.
Bijhouden hoeveel plaatjes je laadt, waar je een resize over doet.

Dan kan je netjes alles aflopen, zonder dat je als een hyperactief konijn functies in het rond laat spuiten.

krijg een beetje dit gevoel als ik je code lees:
"doe nu zoveel mogelijk deze functie!
.........en nu weer deze!
......ennnnn STOP!"