CHARGER PUIS AFFICHER UNE IMAGE BITMAP EN 16 MILLIONS DE COULEURS OU 24 BITS

cs_chmod777 Messages postés 46 Date d'inscription jeudi 25 juillet 2002 Statut Membre Dernière intervention 2 décembre 2006 - 19 févr. 2003 à 00:07
cs_Bl0tCh Messages postés 74 Date d'inscription dimanche 2 novembre 2003 Statut Membre Dernière intervention 6 septembre 2008 - 13 sept. 2005 à 16:55
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/9561-charger-puis-afficher-une-image-bitmap-en-16-millions-de-couleurs-ou-24-bits

cs_Bl0tCh Messages postés 74 Date d'inscription dimanche 2 novembre 2003 Statut Membre Dernière intervention 6 septembre 2008
13 sept. 2005 à 16:55
J'ai trouvé, et donc je me permet de corrigier ton code :
for(j=hauteur;j>0;j--) //on enregistre l'image de bas en haut et de gauche à droite
for (i=0;i<largeur;i++)
{
// on récupère la composante bleue du point
rgb[0]=fgetc(fichier);
// on récupère la composante verte du point
rgb[1]=fgetc(fichier);
// on récupère la composante rouge du point
rgb[2]=fgetc(fichier);

//on stocke la valeur RGB du point dans le tableau
images.points[i][j]=RGB(rgb[2],rgb[1],rgb[0]);
}

donne
for(j=hauteur;j>0;j--) //on enregistre l'image de bas en haut et de gauche à droite
k=0
for (i=0;i<largeur;i++)
{
// on récupère la composante bleue du point
rgb[0]=fgetc(fichier);
// on récupère la composante verte du point
rgb[1]=fgetc(fichier);
// on récupère la composante rouge du point
rgb[2]=fgetc(fichier);
k=k+3

//on stocke la valeur RGB du point dans le tableau
images.points[i][j]=RGB(rgb[2],rgb[1],rgb[0]);
}
for(l=0, l=4-k%4, l++)
{
fgetc(fichier)
}

comme ça ça marche à chaque fois ;)
(dapres ce que jai compris de ce que j'ai lu il faut que chaque ligne ai une longueur qui soit un multiple de 4, sinon on rempli le manquant avec des des octets vide :D
cs_Bl0tCh Messages postés 74 Date d'inscription dimanche 2 novembre 2003 Statut Membre Dernière intervention 6 septembre 2008
13 sept. 2005 à 16:27
J'ai une petite question :
Jessaie moi aussi de faire un loader de bitmpap (mais ne python) et tout marche nickel sauf quand j'essaie d'ouvrir des images ou une des dimensions n'est pas un multiple de 4. Ds ce cas j'ai un peu nawak qui saffiche :s
banane_rose Messages postés 302 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 22 avril 2006
17 juin 2005 à 22:35
erreur de compilation sous dev-c++ c'est normal ??

>> undefined reference to `WinMain@16'
makofabien Messages postés 3 Date d'inscription mercredi 3 mars 2004 Statut Membre Dernière intervention 3 mars 2004
3 mars 2004 à 18:06
Une petite fonction utilisant le LoadBitmap serait utile, surtout pour extraire le quatrième paramètre des ressources, si cette fonction fonctionne ainsi.
makofabien Messages postés 3 Date d'inscription mercredi 3 mars 2004 Statut Membre Dernière intervention 3 mars 2004
3 mars 2004 à 18:05
Une petite fonction utilisant le LoadBitmap serait utile, surtout pour extraire le quatrième paramètre des ressources, si cette fonction fonctionne ainsi.
makofabien Messages postés 3 Date d'inscription mercredi 3 mars 2004 Statut Membre Dernière intervention 3 mars 2004
3 mars 2004 à 18:03
Une petite fonction utilisant le LoadBitmap serait utile, surtout pour extraire le quatrième paramètre des ressources, si cette fonction fonctionne ainsi.
Amanobuo Messages postés 65 Date d'inscription mardi 24 février 2004 Statut Membre Dernière intervention 11 décembre 2006
27 févr. 2004 à 12:42
il n'y a pas de main, comment faire ? c'est ou le debut ?
fluyssen Messages postés 1 Date d'inscription mardi 16 septembre 2003 Statut Membre Dernière intervention 16 septembre 2003
16 sept. 2003 à 13:57
Pas mal pour se faire la main, mais c'est pas trés rapide comme méthode. Regarde du côté du BitBlt, c'est 100 fois plus rapide au niveau affichage, et en plus ça peut s'adapter à une dimension de sortie différente de celle du bitmap.
tibs75 Messages postés 2 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 1 avril 2003
26 mars 2003 à 20:45
etant novice en c++, j'aimerai savoir comment importer une image vers vs6, afin de pouvoir aprécier ton programme
cs_chmod777 Messages postés 46 Date d'inscription jeudi 25 juillet 2002 Statut Membre Dernière intervention 2 décembre 2006 1
19 févr. 2003 à 00:15
scuze g relu ton code, y a pas de prob, scuze
cs_chmod777 Messages postés 46 Date d'inscription jeudi 25 juillet 2002 Statut Membre Dernière intervention 2 décembre 2006 1
19 févr. 2003 à 00:09
autre chose (scuze) je croit qu'une bitmap, ça s'affiche de haut en bas et pas l'inverse (le premier pixel décrit par le fichier est normalement celui situé en haut a gauche)
cs_chmod777 Messages postés 46 Date d'inscription jeudi 25 juillet 2002 Statut Membre Dernière intervention 2 décembre 2006 1
19 févr. 2003 à 00:07
sauf erreur (je debute) tu ecrit cela:

images.hauteur=hauteur

or cela fait appel selon moi a une structure appellée images que tu n'as pas déclarée.
j'avoue que je n'ai pas encore essayé ce code.
de toute façon c du beau boulot

P.S: tu n'a pas inclus de fonction main............