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

 


Dernière réponse
Sujet : [VB5] Rétrécir une image dans un Picturebox en gardant les proportions
Rick The Alone j'ai utilisé l'API StretchBlt. Ca marche mais la photo, une fois rétrécie "bave"  :( Comme si la palette de couleur n'était pas réspectée. :heink:  
Je vais donc tester ta 2ème méthode... Mais demain, car je suis debout depuis 2h du mat (boulot oblige) et là je fatigue un peu...
 
Encore merci
@+

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Rick The Alone j'ai utilisé l'API StretchBlt. Ca marche mais la photo, une fois rétrécie "bave"  :( Comme si la palette de couleur n'était pas réspectée. :heink:  
Je vais donc tester ta 2ème méthode... Mais demain, car je suis debout depuis 2h du mat (boulot oblige) et là je fatigue un peu...
 
Encore merci
@+
Carbon_14 Pour le code de stretching, vu que c'est plus "léger" au niveau code, il faudrait peut-être essayer de trouver les dimensions de l'image (en la chargeant sans l'afficher, ou dans zone non visible) voire trouver une fonction pour ça.
 
Connaissant la taille dispo maximale, il faut réajuster la hauteur ou la largeur du CONTENEUR pour que le stretch soit "parfait".
Image.Width, Image.Height (ou qq chose comme cela, ai oublié VB).
Rick The Alone Merci CARBON_14 , je vais de suite tester cela.
Rick The Alone Tout d'abord merci pour vos réponses. Mais en utilisant le code suivant :
Private Sub Command1_Click()
chemin1 = App.Path
chemin2 = "\test.jpg"
chemin = chemin1 + chemin2
Dim objPic As Picture
Set objPic = LoadPicture(chemin)
Image1.Stretch = True
Image1.Picture = LoadPicture(chemin)
End Sub

 
Cela me réduis bien l'image au format du controle Image mais ça ne me garde pas les proportions de l'image d'origine.
 
De plus j'ai pas trouvé pour l'équivalent de "proportionnal" sous VB5 et en plus.
 
Donc je suis au même point
 
@+
Carbon_14 Si y a pas de moyens "directs, l'API StretchBlt sait faire.
 
StretchBlt function copies a bitmap from a source rectangle into a destination rectangle, stretching or compressing the bitmap to fit the dimensions of the destination rectangle, if necessary. Windows stretches or compresses the bitmap according to the stretching mode currently set in the destination device context.  
 
BOOL StretchBlt(
    HDC hdcDest, // handle of destination device context  
    int nXOriginDest, // x-coordinate of upper-left corner of dest. rect.  
    int nYOriginDest, // y-coordinate of upper-left corner of dest. rect.  
    int nWidthDest, // width of destination rectangle  
    int nHeightDest, // height of destination rectangle  
    HDC hdcSrc, // handle of source device context  
    int nXOriginSrc, // x-coordinate of upper-left corner of source rectangle  
    int nYOriginSrc, // y-coordinate of upper-left corner of source rectangle  
    int nWidthSrc, // width of source rectangle  
    int nHeightSrc, // height of source rectangle  
    DWORD dwRop  // raster operation code  
   );  
 
Y a peut-être exemples intrinsèques sur site dédié à VB (j'ai pas l'URL en tête, Cf chercher sur le forum...).
antp

juju_le_barbare a écrit a écrit :

[...] mais en Delphi, il faut mettre
Image1.stretch := True;




 
pour la garder proportionnelle il y a aussi un attribut "Proportional" (uniquement à partir de Delphi 6)

juju_le_barbare salut,
 
je sais pas comment on fait en VB (waw je penserais pas ke je dirais ça un jour !!!), mais en Delphi, il faut mettre
 
Image1.stretch := True;
 
En VB ça devrait ressembler.
Rick The Alone Un petit Up
Bon j'ai vu que pour picturebox c'est pas possible alors si vous avez une autre soluce merci d'avance
Rick The Alone Salut à tous,
Je souhaiterais pouvoir insérer des images dans un picturebox de taille fixe. Et si l'image est plus grande, qu'il me la rétrécisse tout en gardant les proportions Hauteur/Largeur de l'image d'origine.
Si vous avez un code source ou un lien pour un composant VB faisant cela, ça me serais très utile.
Merci d'avance
@+

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)