[BGRABitmap] Étirer une image
Mon problème va paraître basique à beaucoup d'entre-vous mais, après plus d'une journée passée à faire des tests et à lire les tutoriels de G. Vasseur et à chercher des pistes sur les forums, je me résoud à solliciter l'aide de la communauté.
Je cherche à ajuster une image (par un facteur de zoom) à l'espace disponible sur mon écran soit 954 pixels en hauteur et 1350 pixels en largueur ( homothétique du format A4 paysage). J'ai chargé mon image dans un BGRAImageManipulation dont le nom est BGRA_GC_IMgZ et il me reste à lui appliquer un effet de zoom, à priori en utilisant StretchPutImage ou StretchPutIMageProportionaly mais je n'arrive pas à obtenir le résultat escompté à savoir une image entièrement inscrite dans un cadre de dimension 1350 pixels* 954 pixels.
Code:
1 2 3 4 5 6 7 8 9 10
| BGRA_GC_ImgZ.Top := 5 ; // le container image position et taille
BGRA_GC_ImgZ.Left := 5 ;
BGRA_GC_ImgZ.Height := TaillImgOrigH ;
BGRA_GC_ImgZ.Width := TaillImgOrigW ;
BGRA_GC_ImgZ.Bitmap.loadFromFile(NomImg2); // L'image est chargée dans le Container BGRA_GC_ImgZ
Img_orig := TBGRABitmap.create(TaillImgOrigW, TaillImgOrigH, 255) ; // l'image d'origine à la taille non ajustée
Img_Ajust := TBGRABitmap.create(Nll_larg, Nll_Haut,255) ; // l'image dont la taille est ajustée à celle disponible
Img_Ajust.StretchPutImage(Img_Ajust.ClipRect,Img_orig, dmDRawwithTRansparency );
BGRA_GC_ImgZ.redrawBitmap ; |
Je souhaite ensuite sauvegarder l'image dont la taille a été ajustée pour d'autres traitements.
Je vous remercie par avance pour vos explications.
R.O.
BGRAGRaphicControl, ajuster une image à la taile écran et la sauvegarder
Bonsoir,
Non je n'ai pas besoin de faire d'autres transformations que l'ajustement de l'image à la taille d'écran disponible. Dire que la solution était aussi simple (simplement se rendre compte que Zoomer pouvait être synonyme d'Etirer !!
Merci R. Chastain.
Cordialement
R.O.