begin process at 2012 02 09 19:11:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

MFC

 > 

RGB 32 to 16


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

RGB 32 to 16

samedi 5 janvier 2008 à 13:47:35 | RGB 32 to 16

ip2x

Bonjour,

Je cherche une fonction permettant de "bliter" une image RGB 32bpp en 16bpp.

Cordialement,

Pierre.

____________________________________________
Aprés l'effort, le reconfort... [ Lien ]
lundi 7 janvier 2008 à 22:42:35 | Re : RGB 32 to 16

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

RGB565 -> RGB888 ?

Un RGB565 contient moins d'informations qu'un RGB888, donc il va falloire "inventer" des informations. Il semble qu'il y ai deux méthodes : recopier les bits de poids fort dans les bits de poid faible, ou faire un classique produit en croix. La première méthode est moins précise mais plus rapide que la seconde.

R8 = (R5 << 3) | (R5 >> 2);
R8 = (R5 * 255) / 31;

Ca doit être quelque chose comme ça (Non testé, types Windows) :
COLOR16 rgb565;
RGBTRIPLE rgb888;
BYTE R5, G6, B5;

R5 = rgb565 & 1F;
G6 = (rgb565 >> 5) & 3F;
B5 = (rgb565 >> 11) & 1F;

rgb888.rgbtRed = (R5 << 3) | (R5 >> 2);
rgb888.rgbtGreen = (G6 << 2) | (G6 >> 4);
rgb888.rgbtBlue = (B5 << 3) | (B5 >> 2);

mardi 8 janvier 2008 à 13:11:32 | Re : RGB 32 to 16

ip2x

Réponse acceptée !
Merci mais c'est en fait l'inverse que je dois faire : RGB888 -> RGB565. J'avais une image 32bits à afficher dans un DC 16bits. La fonction ::CopyImage(HBITMAP(32Bits),...,...,...) avec comme parametre optionnel LR_CREATEDIBSECTION à manifestement permis de résoudre ce problème... Merci rt15 pour ta réponse !


Cette discussion est classée dans : to, rgb


Répondre à ce message

Sujets en rapport avec ce message

int to char ! [ par nullspace ] Voila mon problème !J'ai une résultat sous forme de variable INT, et je veux que ce résultat soit affecté à une variable de type CHAR.Genre, si j'ai 6 Conversion Float to String [ par PierreP ] Bonjour à tous !je suis en train de me prendre la tête pour créer une fonction de conversion d'un réel en une chaine de caractère (problème du débutan SetTextColor(HDC,COLORREF); [ par Xs ] salut !j'ai un probleme avec cette fonction que j'ai rencontré par hasard : elle ne marche pas. Je la compile correctement mais il ny'a a aucun effet Unsigned char to AnsiString et Ansistring to UnS Char??? [ par asik38 ] Comment on fait pour convertir unsigned char an ansistringEt de AnsiString en unsigned char*Merci!!! char* to unsigned char* [ par rodrigos ] comment peut-on convertir un char* en unsigned char*?à quoi correspond un unsigned char*?Merci pour votre aide!! [MFC] Problème avec les splitters [ par juanito64 ] Bonjour a tousJe suis entrain de developper une appli SDI sous visual C++Pour diviser ma fenetre principale, j'ai utilisé des splitters (au nombre de DLL C++ To VB ;-) [ par jmtoulon ] Bonjour :)Voila je voudrais savoir si il est possible de fabriquer une DLL en C++ et de l'intéger dans VB ?Le but de mon projet est de calcul et grand traduction delphi to borland c++ [ par aphane ] Quelqu'un saurait-il me traduire cet extrait de code que j'ai écrit avec delphi5 en c++borlandmerciprocedure TForm1.Button2Click(Sender: TObject); var Coord 2D to 3D [ par bat67000 ] Comment optenir d'un point 2D sur l'app les coordonnees du point 3D associé avec la matrice de projection ?(je pige pas bien comment fonctionne la mat vc++ OFN_ALLOWMULTISELECT CFileDialog [ par pichu ] je comprends pas ce que je doit faire avec m_ofn.lpstrFile dans l'extrait de la msdn quand je veux recuperer plusieurs chemins de fichiers :To allow t


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,106 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales