IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

calcul de la position de l'image dans le pictureBox en mode Zoom


Sujet :

Windows Forms

  1. #1
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut calcul de la position de l'image dans le pictureBox en mode Zoom
    salut
    j'ai besoin de savoir la position de l'image dans une picture box lors du mode Zoom comment peut on calcuer sa???

  2. #2
    Membre habitué Avatar de salihovic
    Inscrit en
    Février 2007
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 255
    Points : 135
    Points
    135
    Par défaut
    j'ai trouvé la solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
            /// <summary>
            /// donne les paramètres pour la position de l'image ;)
            /// </summary>
            /// <param name="pbox">PictureBox qui contient l'image</param>
     
            public void OffsetOfImage(PictureBox pbox)
            {
                // Calculer les taux d'étirement/compression de l'image
                float xRatio = 1F;
                float yRatio = 1F;
     
                if (pbox.SizeMode == PictureBoxSizeMode.Zoom)
                {
                    float a = (float)pbox.Height / (float)pbox.Image.Height;
                    float b = (float)pbox.Width / (float)pbox.Image.Width;
                    xRatio = Math.Min(a, b);
                    yRatio = xRatio;
                }
                //// Calculer la taille de l'image affichée
                 Size imgs = new Size((int)(pbox.Image.Width * xRatio), (int)(pbox.Image.Height * yRatio));
    //calculer les différances entre l'image et le picturebox
               int diffx = (int)((pbox.Width - pbox.Image.Width * xRatio) / 2);
                int diffy = (int)((pbox.Height - pbox.Image.Height * yRatio) / 2);
     
               //min est le point minimum le plus haut à gauche de l'image
                min.X = diffx;
                min.Y = diffy;
    //max est le point le plus bax à droite de l'image
                max.X = (int)(diffx + imgs.Width);
                max.Y = (int)(diffy + imgs.Height);
     
            }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Position d'une image dans un Jpanel
    Par lolocks dans le forum Débuter
    Réponses: 1
    Dernier message: 21/04/2011, 11h12
  2. récupérer la position d'une image dans une figure
    Par kawther dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 04/10/2010, 15h09
  3. modifier la position d'une image dans une galerie
    Par VIRGINIE87 dans le forum Langage
    Réponses: 8
    Dernier message: 17/02/2010, 23h53
  4. Réponses: 1
    Dernier message: 02/08/2005, 16h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo