Forums Développement Multimédia

Aller au contenu

- - - - -

Fonction zoom sur sur adobe Reader

CODE DETENTE TUTO

3 réponses à ce sujet

#1 Yakub

    Ceinture Verte

  • Members
  • PipPipPipPip
  • 54 messages

Posté 03 May 2018 - 17:19 PM

Bonjour,

je souhaite avoir la possibilité de zoomer sur ma scene, j'ai presque réussi avec ce bout de code en plaçant un écouteur d’événement sur le scrolling de la souris

addEventListener(MouseEvent.MOUSE_WHEEL, zoomImage);

function zoomImage(e:MouseEvent):void{
if(e.delta > 0){
e.currentTarget.width += 30;
e.currentTarget.height += 30;
}else{
e.currentTarget.width -= 30;
e.currentTarget.height -= 30;
}
}

Malheureusement le résultat n'est pas parfait par le zoom ne se fait pas avec comme reference le pointeur de la souris, du coup j'agrandi mon image et je suis obliger de recentrer a chaque zoom, dé-zoom .

Est il possible de realiser un genre de zoom comme sur acrobat reader ?
merci

#2 pol2095

  • Members
  • PipPipPipPipPipPipPipPip
  • 1736 messages

Posté 10 May 2018 - 20:17 PM

C'est faisable mais pas si simple, je l'ai fait avec Starling/Feathers, si ça peut t'aider ici (version pour mobile), Starling gère le point d'ancrage, pas la classique display list, il va falloir placer ton MovieClip ou ton image dans un Sprite.

#3 pol2095

  • Members
  • PipPipPipPipPipPipPipPip
  • 1736 messages

Posté 11 May 2018 - 23:08 PM

essaie ce code

private function zoomImage(e:MouseEvent):void
{
    var zoomAmount:Number = 0.1;
    if( e.delta < 0 ) zoomAmount *= -1;
   
    var x:int = e.currentTarget.mouseX;
    var y:int = e.currentTarget.mouseY;
    e.currentTarget.scaleX += zoomAmount;
    e.currentTarget.scaleY += zoomAmount;
    e.currentTarget.x -= x * zoomAmount;
    e.currentTarget.y -= y * zoomAmount;
}


#4 Yakub

  • Guests

Posté 17 May 2018 - 17:39 PM

Bonjour Pol2095

Merci beaucoup je teste ton script et je reviens pour faire un retour




Répondre à ce sujet



  

1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP