Thema: Delphi Transparent zeichnen

Einzelnen Beitrag anzeigen

Cicaro

Registriert seit: 9. Feb 2005
285 Beiträge
 
Delphi 7 Personal
 
#1

Transparent zeichnen

  Alt 8. Jul 2005, 19:07
Tach, Leute!

Ich möchte ein Bild auf 'nem HDC Transparent (ohne Hintergrundfarbe) ausgeben.

Delphi-Quellcode:
var
Bitm:TBitmap;

procedure DrawTo(DC:HDC);

var
 B:TBitmap;
 MyMask:HBITMAP;

begin
 B:=TBitmap.Create;
 B.Width:=Bitm.Width;
 B.Height:=Bitm.Height;
 B.Canvas.Draw(0,0,Bitm);

 B.Mask(0);
 MyMask:=B.MaskHandle;

// BitBlt(DC,Left,Top,Width,Height,Bitm.Canvas.Handle,0,0,SrcCopy); // bisher

 MaskBlt(DC,Left,Top,Width,Height,Bitm.Canvas.Handle,0,0,
         MyMask,0,0,SrcCopy);

 B.Free;
end;
Das klappt nicht, mein Bitmap wird überhaupt nicht ausgegeben. Mache ich etwas falsch ? Oder soll ich TrasparentBlt (oder so ähnlich) verwenden ? Damit hatte ich auch meine Schwierigkeiten.

Gibt es eine einfache Lösung meines Problems ?
  Mit Zitat antworten Zitat