Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.622 Beiträge
 
Delphi 12 Athens
 
#14

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 12:02
Was heißt geht nich? Kommt nix oder an der falschen Stelle? Wird bei TBitmap32 Draw direkt aufgerufen oder über Canvas? Anbei mal ein Beispiel mit "normalen" Bitmaps (achte mal auf die Koordinaten beim Zeichnen auf Ziel):
Delphi-Quellcode:
procedure TForm1.FormPaint(Sender: TObject);
var qb1, qb2, qb3, ziel: TBitmap;
begin
  //Erzeugen und Zeichnen der 3 Quellbitmaps
  qb1 := TBitmap.Create;
  try
    qb1.Width := 20;
    qb1.Height := 40;
    qb1.Canvas.Brush.Color := clRed;
    qb1.Canvas.FillRect(Rect(0,0,20,40));

    qb2 := TBitmap.Create;
    try
      qb2.Width := 20;
      qb2.Height := 40;
      qb2.Canvas.Brush.Color := clYellow;
      qb2.Canvas.FillRect(Rect(0,0,20,40));

      qb3 := TBitmap.Create;
      try
        qb3.Width := 20;
        qb3.Height := 40;
        qb3.Canvas.Brush.Color := clBlue;
        qb3.Canvas.FillRect(Rect(0,0,20,40));

        //Erzeugen und Zeichnen der Zielbitmap
        ziel := TBitmap.Create;
        try
          ziel.Width := 60;
          ziel.Height := 40;
          //linke Quellbitmap
          ziel.Canvas.Draw(0,0,qb1);
          //mittlere Quellbitmap
          ziel.Canvas.Draw(qb1.Width,0,qb2);
          //rechte Quellbitmap
          ziel.Canvas.Draw((qb1.Width + qb2.Width),0,qb3);
          self.Canvas.Draw(10,10,ziel);
        finally
          ziel.Free;
        end;
      finally
        qb3.Free;
      end;
    finally
      qb2.Free;
    end;
  finally
    qb1.Free;
  end;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat