cs_Manson
Messages postés137Date d'inscriptionlundi 17 décembre 2001StatutMembreDernière intervention30 septembre 2004
-
5 mai 2004 à 09:08
cs_Manson
Messages postés137Date d'inscriptionlundi 17 décembre 2001StatutMembreDernière intervention30 septembre 2004
-
8 mai 2004 à 13:54
Salut a tous,
voila, je voudrais faire une fonction, si elle n'existe pas deja,
a laquelle je passe un HBITMAP, une largeur et une hauteur,
et elle me renvoi un HBITMAP correspondant au redimenssionement demande. Alors j'ai essaye plein de choses,
j'ai tente de refaire moi meme le resize en travaillant directements sur le data de l'images, les BITS de l'images recuperer grace a GetDIBits, et ensuite de les reinjecte a une image ayant le meme header que la premiere en fesant un SetDIBits. Mais ca ne marche pas. J'ai tente aussi un StrechDiB mais la c'est pire.
En fait cette fonction va mettre util pour inserer dans un PictureBox, donc un Static avec le flag SS_BITMAP, une image qui se redimenssionne toute seul a la taille du controle, paske je n'ai pas trouver les flags permettant de definir que l'image passe avec STM_SETBITMAP soit redimenssioner a la taille du controle.
// selection source ds un DC
HDC hdc = GetDC(NULL);
HDC hDCSrc = CreateCompatibleDC(hdc);
HBITMAP hOldBmpSrc = (HBITMAP)SelectObject(hDCSrc, hBmpSrc);
// création bitmap dest et sélection ds un DC
HDC hDCDst = CreateCompatibleDC(hdc);
HBITMAP hBmpDst = CreateCompatibleBitmap(hdc, newSize.cx, newSize.cy);
HBITMAP hOldBmpDst = (HBITMAP)SelectObject(hDCDst, hBmpDst);
cs_Manson
Messages postés137Date d'inscriptionlundi 17 décembre 2001StatutMembreDernière intervention30 septembre 2004 8 mai 2004 à 13:54
oui je l'avais vu ... lol ... j'ai pas chercher longtemps mais je me suis pose des questions quand meme :-D J'ai rajouter aussi le setmode sur le Stretch pour eviter de denaturer l'image.