Zitat von
Thebe:
Und zwar ist bei diesem Bitmap das PixelFormat pfDevice, was ja auch eigentlich alles sein könnte. Wenn ich das PixelFormat auf 32bit setze, hab ich dann ja auch 32bit Information in dieser Bitmap wie Alpha Channel z.B. Nur manchmal ist so ein Bitmap eben nicht im 32bit Modus sondern z.b. nur 8 oder 16bit, nur das Pixelformat bleibt gleich beim TBitmap, nämlich pfDevice.
Wie kann ich nun rauskriegen ob die Bitmap die ich bearbeite im 32bit Modus ist oder nicht, allerdings ohne das ich mich auf TBitmap.Pixelformat stützen muss ?
Ein Bitmap mit PixelFormat pfDevice ist ein Device-Dependent Bitmap (DDB), seine Farbtiefe also abhängig vom Gerät (z.B. Bildschirm). Eine kurze Suche führt zu
dieser MSDN Seite. Dort steht, dass die Farbtiefe des Geräts mit
GetDeviceCaps ermittelt werden kann. Für pfDevice Bitmaps also mit GetDeviceCaps(Bitmap.Canvas.Handle, BITSPIXEL). Ich hoffe das hilft.