Frage zu Pointer zuweisung bei einem 16Bit Bitmap
-
Hi @ all!!
hab da mal eine Frage zu Pointern ich würde gerne ein 16Bit Bitmap auslesen...
und jede Zeile auslesen und in ein Pointer schreiben(b ist eine Matrix die mit elementen gefüllt werden soll ist auch vom typ unsigned short)
hier mal der Quellcode:Graphics::TBitmap *pBitmap = new Graphics::TBitmap(); pBitmap->LoadFromFile("C:\\jetzt1.bmp "); pBitmap->PixelFormat=pf16bit; unsigned short *ptr; for (int y = 0; y < pBitmap->Height; y++) { ptr = (unsigned short *)pBitmap->ScanLine[y]; for (int x=0; x < pBitmap->Width; x++) { b.SetElement(y,x,ptr[x]); } }zu meinem Problem ich würde gerne die Zeile meines Bitmaps in ein 2 Byte Pointer schreiben geht aber leider nicht er gibt mir nur komische Zeichen besser gesagt der Pointer Inhalt ist viel zu kurz... und er gibt mir bei der Programmausführung ein Speicherzugriffsfehler...
Wenn ich ein 8Bit Bitmap habe und ein unsigned char Pointer nehme ließt er wirklich jeden Pixel aus warum dann nicht mit 2 Byte?
Vielen Dank schonmal für eure Hilfe....
MFG Toby
-
1.) dir kann so nicht geholfen werden, weil wichtige Teile des Codes fehlen
2.) Benutze bitte Code-Tags. So ist das unleserlich!