Afficher une image + utilisation de getpixel

Résolu
cs_LivMan Messages postés 3 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 23 mars 2005 - 22 mars 2005 à 14:29
SnOOpss Messages postés 571 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 5 décembre 2013 - 23 mars 2005 à 21:42
Bonjour a tous,

Je suis débutant, je souhaiterais coder en C un petit programme me
permettant d'afficher une image jpg ou bmp à l'écran, puis en
fournissant les coordonnées d'un pixel, savoir si la couleur de celui
ci. J'utilise visual c++ et j'ai essayé d'utiliser la fonction
getpixel() mais je n'ai pas la librairie graphics.h et je ne la trouve
nulle part. En ce qui concerne ouvrir l'image je connais la fonction
fopen mais elle ne fait que charger l'image en mémoire il me semble.

Toute aide sera bienvenue, merci d'avance.

3 réponses

SnOOpss Messages postés 571 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 5 décembre 2013
23 mars 2005 à 09:16
Salut !!

Deja le plus simple c'est pour charger un bmp

(HBITMAP)LoadImage(0,"chemin de ton fichier", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);



Ensuite en quoi tu programme pour ne pas avoir cette librairie sinon sur la msnd je viens de lire pour getpixel



Requirements



Windows NT/2000/XP: Included in Windows NT 3.1 and later.

Windows 95/98/Me: Included in Windows 95 and later.

Header: Declared in Wingdi.h; include Windows.h.

Library: Use Gdi32.lib.



Donc je suis pas sur que graphics.h soit necessaire !!!
3
cs_LivMan Messages postés 3 Date d'inscription mardi 8 mars 2005 Statut Membre Dernière intervention 23 mars 2005
23 mars 2005 à 16:34
Merci pour ton aide, j'aurais encore une derniere question.
La fonction GetPixel contient comme premier parametre une variable de type hdc (Handle to the device context), j'aimerais savoir quelle valeur je suis sense mettre, ou ou quelle fonction utiliser pour la determiner.
Merci.
0
SnOOpss Messages postés 571 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 5 décembre 2013
23 mars 2005 à 21:42
selon l'endroit ou tu l utilise ya plusieur moyen de l'obtenir

Dans le WM_PAINT

HDC hdc;

case WM_PAINT:

{

if(wParam 0) hdc BeginPaint(hwnd, &ps);

else
hdc =
(HDC)wParam;



[....]

ton code

[...]



if(wParam == 0)

EndPaint(hwnd, &ps);



return 0; //selon tes besoins

}



Sinon ya

HDC hdc = GetDC(hwnd);

[...]

ton code

[...]

ReleaseDC(hwnd, hdc);
0
Rejoignez-nous