ARGB Bild wird nicht transparten WARUM?

Gast #2499071
Lesenswert?

HALLO!!!


ich möchte zwei Bild überlagern und dafür eins der Bild transparent 
machen.
1
  BitmapData bmData = localBitmap.LockBits(new Rectangle(0, 0, localBitmap.Width, localBitmap.Height), ImageLockMode.ReadWrite, PixelFormat.Format32bppArgb);
2

3

4
int stride = bmData.Stride;
5
            System.IntPtr Scan0 = bmData.Scan0;
6

7

8
 unsafe
9
            {
10
                byte* p = (byte*)Scan0;
11
                int nOffset = stride-localBitmap.Width*4;
12

13
for ( int u = 0; u< localBitmap.Height; u++)
14
                {
15
                    for( int v= 0; v< localBitmap.Width; v++)
16
                     {
17
                            p[0] = 125;
18
                            p[1] = 125;
19
                            p[2] = 0;
20
                            p[3] = 255;
21
                            
22
                       
23
                        
24
                        p+=4;
25

26
                    }
27

28
                    p+= nOffset;
29
                }
30
            }
31

32
            localBitmap.UnlockBits(bmData);
33

34

35
           
36
            
37
            
38
            return localBitmap;
39

40

41
        }

Welche von den p[0] = 125;
                            p[1] = 125;
                            p[2] = 0;
                            p[3] = 255;

ist denn jetzt der Alphakanal. Ich hätte gedacht  p[3] = 255;

Aber das Bild wird nicht transparent. Kann mir jemand weiterhelfen.
Danke Gruss
Andre

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren