Registriert seit: 6. Feb 2008
838 Beiträge
|
AW: Farbwerte von 24 Bit RGB zu 16 Bit RGB (565) konventieren
13. Nov 2014, 00:17
ein Zusammenhang mit einem Dreisatz erschließt sich mir hier nicht... ich empfehle ganz einfaches binäres ausmaskieren und Bit-Schieben:
rgb24 : DWORD;
rgb16 : WORD;
//xxxxxxxx RRRRRrrr GGGGGGgg BBBBBbbb -> RRRRRGGG GGGBBBBB
//eventuell ist Rot&Bbau vertauscht, das ist aber wurscht weil symmetrisch
rgb16:=WORD(DWORD( ((rgb24 and $f80000) shr 8) or ((rgb24 and $fc00) shr 5) or ((rgb24 and $f8) shr 3) ))
|