Bonjour,
J'ai une image contenant un bitmap et j'aurai aimé savoir comment est-il possible d'effectuer un zoom sur cette image.
Merci d'avance
Bonjour,
J'ai une image contenant un bitmap et j'aurai aimé savoir comment est-il possible d'effectuer un zoom sur cette image.
Merci d'avance
Service Internet France
Création et hébergement de sites Internet
Vous pouvez utiliser la méthode StretchDraw, voyez mes Remarques sur mon site (cliquez www en bas de ce message pour y accéder), alinéa 62.
StretchDraw recopie un bitmap dans un autre bitmap de dimension arbitraire, donc s'il est plus grand et respectant les proportions, on obtient un zoom.
À bientôt
Gilles
Déjà merci pour le conseil.
Mais j'ai de nouveau un problème.
Lorsque j'effectue mon Zoom, une partie de l'image est zappée.
En fait je fais un x2 quand je clik sur un bouton et à ce moment là, ce qui est observable c'est le quart superieur de l'image zoomé et le reste est vide. Donc j'ai bien une image 2x plus grande que l'image initiale mais mon bitmap n'est pas complet.
Celà peut-il venir du fait que mon image est créée par acquisition scanner :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 //Fonction permettant de charger l'image scanner dans le cadre image void __fastcall TForm1::mcmTWAIN1ImageReady(TObject *Sender, Pointer pBmp, PBitmapInfo pBmpInfo, HBITMAP hImage, AnsiString FilePath) { //On libère le cadre au cas où un image est déjà présente Image1->Picture->Bitmap->FreeImage(); //On réinitialise le handle de l'image Image1->Picture->Bitmap->ReleaseHandle(); //On introduit l'image scannée dans le handle Image1->Picture->Bitmap->Handle = hImage; //On remet à jour l'affichage Repaint(); }
Service Internet France
Création et hébergement de sites Internet
De plus ma fonction pour dézoomer ne fonctionne pas.
Service Internet France
Création et hébergement de sites Internet
Salut !
On suppose :
Le bitmap contient l'image avec sa dimension réelle.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 TImage *Image1; Image1->AutoSize = false; Image1->Stretch = true;
Image1 elle, possède sa propre dimension qui est celle du cadre
dans lequel le bitmap sera dessiné.
La propriété Stretch = true fait que le bitmap sera dessiné autant
que possible dans le cadre délimité par Image1 donc comprimée, élargie
ou tel quel.
Donc si Zoom = x2 (200 %)
Image1->Width = Image1->Picture->Bitmap->Width * 2;
Image1->Height = Image1->Picture->Bitmap->Height * 2;
A plus !
Ok je te remercie maintenant c'est nikel tout marche.
En fait dans les options de mon image j'avais :
Donc maintenant plus de problème zoom et dezoom ca marche
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Image1->AutoSize = true; Image1->Stretch = false;
Service Internet France
Création et hébergement de sites Internet
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager