Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1155 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Faire apparaître une image à 25% de sa taille

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Faire apparaître une image à 25% de sa taille

n°1435159
pimprenell​e57
Posté le 01-09-2006 à 15:03:07  profilanswer
 

Bonjour,
 
je suis en thèse de physique, et pour dépouiller nos résultats, on utilise des programmes écrits dans le labo en VB.  
Cela consiste en une analyse d'image d'une taille h x L.
Pour diverses raisons, je souhaite passer à des images de taille 2h x 2L. Le problème est que l'image 2h x 2L ne tient pas sur mon écran et que j'ai besoin de faire certaines manipulations sur l'image "entière", notamment des définitions de zone.
 
Comment faire pour afficher l'image au quart de sa taille, tout en conservant les données de la grande image en mémoire du problème? (car sinon, je reviens aux images h x L, et je perds de l'information)
J'ai essayé de voir ce qui pouvait se passer en utilisant ScaleHeight et ScaleWidth, mais ça n'a pas été concluant  :( , et n'étant pas une pro de la programmation, je ne sais pas vers quoi me tourner. (je n'ai rien trouvé sur google ni sur ce forum avec mes mots clés, pas forcément pertinents?)
 
Merci,
 
Pimprenelle57

mood
Publicité
Posté le 01-09-2006 à 15:03:07  profilanswer
 

n°1435492
jpcheck
Pioupiou
Posté le 02-09-2006 à 02:01:04  profilanswer
 

Peux etre au niveau de la fonction autosize à false, mais toi ta zone d'image ne sera pas fixe ?

n°1436099
pimprenell​e57
Posté le 04-09-2006 à 09:09:08  profilanswer
 

Non, ma taille d'image ne sera pas fixe : 2 tailles possibles "petites", et les deux "grandes" correspondantes. Je vais tester autosize, et voir ce que ça donne.  
 
Merci!

n°1436104
pimprenell​e57
Posté le 04-09-2006 à 09:25:13  profilanswer
 

Bon, en fait, il me tronque l'image et n'en prend que le quart dans le coin gauche. :(  
Si quelqu'un a une autre idée (il faudrait que pour l'affichage, VB "compresse" 4 pixels en 1, mais pas pour l'analyse), merci d'avance!

n°1436121
Lord Nelso​n
Posté le 04-09-2006 à 10:02:26  profilanswer
 

Bonjour,
 
Tu peux chercher du côté de la fonction API StretchBlt. On trouve de nombreux exemples de code à son sujet.
Sinon, plus simplement, tu peux utiliser un contrôle "Image" au lieu d'une PictureBox. Le contrôle Image a une propriété Stretch, réglée sur True, pour afficher l'image avec une hauteur et une largeur réduites.
 
A+
Horatio


Message édité par Lord Nelson le 04-09-2006 à 10:03:00
n°1436278
pimprenell​e57
Posté le 04-09-2006 à 15:45:04  profilanswer
 

Bonjour,
 
je ne peux pas utiliser le contrôle Image, car je ne peux pas, dans ce cas, tracer des lignes/cercles sur mon image pendant l'exécution :  
j'ai en fait une pile d'images, constituant un film (de petites cellules vivantes :)). Il faut ensuite que je sélectionne des zones sur la première image (tout ça, c'est bon, je sais faire) et ensuite, il va appliquer ces zones et faire des détections/calculs sur les images suivantes, jusqu'à la fin du film.
Il faut donc que j'arrive à faire les choses suivantes :  
- charger ma grosse image quelque part, et ne la faire apparaître que dans une fenêtre faisant le quart de sa taille ;
- que je définisse, sur l'image réduite, les zones que le programme aura à analyser sur la grande image (créer une sorte de fonction réciproque sera donc nécessaire) ;
- que le programme analyse les zones définies sur la grosse image, puis sur les suivantes, jusqu'à la fin du film.
 
Je suis désolée, je me suis rendue compte ce matin que je n'avais pas tout formulé, et donc que le problème n'apparaissait pas entier. J'espère que là, c'est complet et clair...
 
Merci,
 
Pimprenelle

n°1436311
Lord Nelso​n
Posté le 04-09-2006 à 16:42:26  profilanswer
 

Re,
 
Donc c'est bien la fonction StretchBlt que tu vas devoir utiliser sur des contrôles PictureBox.
 
A+
Horatio

n°1437459
pimprenell​e57
Posté le 06-09-2006 à 10:51:29  profilanswer
 

Merci pour la fonction StretchBlt, elle m'a en effet permis de réduire mon image.  
 
Pimprenelle

n°1437827
pimprenell​e57
Posté le 06-09-2006 à 16:49:19  profilanswer
 

Re,
 
je suis vraiment pas douée, désolée, mais j'aimerais enregistrer le résultat de StretchBlt (et surtout qu'il remplace la valeur de Picture1.Picture), mais pour le faire apparaître dans ma Picturebox j'utilise Debug.Print et visiblement ça n'enregistre pas. C'est l'image de base (la quatre fois plus grosse) qui est en mémoire.
 
Quelqu'un aurait-il une idée?
 
Merci encore,
 
Pimprenelle


Message édité par pimprenelle57 le 06-09-2006 à 16:50:14
n°1438107
Lord Nelso​n
Posté le 07-09-2006 à 10:30:07  profilanswer
 

Salut Pimprenelle,
 
Il me semble que l'instruction SAVEPICTURE pourrait te convenir. Tu devrais trouver un exemple dans l'aide VB ou avec Google.
A+
Horatio


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Faire apparaître une image à 25% de sa taille

 

Sujets relatifs
Taille des FS et de ses fichiers[HTML/PHP]Forcer le chargement d'une image non utiliser
[HTML] Mail en HTML avec image incorporéeMettre une image devant l'url
image en backgroundCentrer une image verticalement dans un bloc
Comment faire apparaitre un texte entre 2 lignes ?placement image
[PHP] Ajouter un tag (image) à une phototraitement d'image
Plus de sujets relatifs à : Faire apparaître une image à 25% de sa taille


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR