![]() |
Re: 32-Bit Farbe - Das letzte Byte missbrauchen?!
dort prüft er nur. Ich vermisse aber die Stelle wo er den Wert in das Bitmap rein schreibt. Zu Beginn der Funktion sehe ich nur das er die Farbtiefe des Bitmaps setzt. Wenn das Bitmap zu dem Zeitpunkt 24bit Farbtiefe hat braucht er nicht auf den Wert zu prüfen (da dann überall der gleiche Wert steht) und wenn das bitmap zu diesem Zeitpunkt 32bit Farbtiefe hat ist die Anweisung nicht notwendig. Er sollte eher eine Prüfung einbauen ob überhaupt ein 32bit Bitmap vorliegt :-)
|
Re: 32-Bit Farbe - Das letzte Byte missbrauchen?!
Zitat:
|
Re: 32-Bit Farbe - Das letzte Byte missbrauchen?!
Hi,
Ja ich habe ein 32-Bit Bitmap. 100%ig. Das setzen des Pixelformats auf 32-Bit war nur eher aus Sicherheit... Die stellen an denen ich das 4. Byte missbrauchen will sind wie gesagt:
Delphi-Quellcode:
und
if p^.rgbReserved = Code then // <---
Delphi-Quellcode:
Es scheint aber leider so nicht zu funktionieren. Ich habe aber mittlerweile eine ganz gute andere Methode gefunden. Also schon mit der Ausnutzung des 4. Bytes. Aber da man das nur mit Scanline kann, erstelle ich mir vorher eine Art Maske nach der dann per Scanline je nach Bedarf das 4. Byte beschrieben wird.
Image1.Picture.Bitmap.Canvas.Brush.Color := $-->0A<--BBBBBB;
Gruß Neutral General |
Re: 32-Bit Farbe - Das letzte Byte missbrauchen?!
Zitat:
Afair geht die WinAPI GDI auch sträflich mit dem 4. Byte um und erst mit den GDI+ Funktion sind diese sorgsamer mit diesem Byte, weil es dort als AlphaKanal genutzt wird. Kurzum: Du musst dein 4. Byte pro Pixel immer per Hand selbst beschreiben. Jede VCL Funktion wird die dort abgelegten Informationen zerstören. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:45 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz