PNG.H -> quelqu'un saurait s'en servir ?? (

Viper31 Messages postés 96 Date d'inscription mardi 2 avril 2002 Statut Membre Dernière intervention 7 août 2005 - 3 déc. 2003 à 21:27
cs_flodef Messages postés 5 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 4 novembre 2008 - 24 oct. 2004 à 02:15
Bonjour tout le monde ...

J'aurai aimé savoir si quelqu'un a deja cherché a se servir de png.h , et peut etre meme s'en est servit ??

J'ai essayé de faire une cherche sur google , les codes trouvé sont assez incipides , j'ai essayé de me pencher png.h , bah chuis allez avaler le tubes d aspirine ...

Bon concretement , la chose simple que j'aimerai faire :

Un fenetre WIN32 (API de preference ;)) avec absolument rien , et je cherche la methode la plus simple pour y coller un png (avec les options qui vont avec , AlphaBlend ..)

Au debut , j'ai cherché une facon d'inclure le png dans le fichier ressource , mais j'ai trouvé aucune doc decrivant cela ...

Puis j'ai compris que dans la plupart des sources utilisant cette lib , ils ouvrent le png a la volée !!

Bon certain vont me repondre que je suis un emmerdeur et que je pourrai aussi prendre un BMP avec un MASQUE ... vous avez raison , mais je me suis posez la question pour l'utilisation de la lib png.h et j'en suis la , pas plus avancé ..

Donc si quelqu'un lisant ce message et qui s'est deja servit de png.h , je souhaiterai connaitre un facon simple de s'en servir pour l exemple ci dessus ... ou alors juste de me montrer grossierement le principe ...

Merci d avance ...

P.S. : bon ya un truc que je crois avoir compris , c'est qu'il ouvre le png et en fait , il le convertit au format DIB pour pouvoir l afficher ... si quelqu'un peut me confirmer ca deja , ca serait un grand pas ;)

P.S. : Je sais que Direct X , permet un truc dans le genre , mais j'ai pas eu le temps de m'y pencher dessus .. en fait ma question est tres specifique sur la bibliotheque "PNG.H"

1 réponse

cs_flodef Messages postés 5 Date d'inscription dimanche 31 août 2003 Statut Membre Dernière intervention 4 novembre 2008
24 oct. 2004 à 02:15
Salut,

Je pense pas que ça va répondre entièrement t'aider dans ton problème, mais peut être que ça va en aider d'autre qui passeront par là et chercherons à charger une image png ou autre (qui prend quand même moins de place qu'un bitmap bmp).

La solution que j'ai trouvé est de créer un objet CImage (qui accepte tout type de fichier) qui va charger l'image, puis de rendre le handle de l'image avec la fonction Detach().

Code fonctionnant sous Visual Studio.net (7.0):

//////////////////////////////////////////////////////////////////////////
// DESCRIPTION: This loads a bitmap and returns a handle to that bitmap.
// INPUT: szFileName - The name of the file to load (Ie. "Bitmap.bmp")
// OUTPUT: nothing
// RETURN: HBITMAP - The handle that references the bitmap loaded
//////////////////////////////////////////////////////////////////////////

HBITMAP LoadABitmap(LPSTR szFileName)
{
CImage img;

// Load the bitmap in an CImage object (allow to load different image file like png)
img.Load(szFileName);

// Return the handle to the bitmap we just loaded
return (HBITMAP)img.Detach();
}

ATTENTION, pensez à inclure la librairie atl image :
"#include ".

F£ö
0
Rejoignez-nous