Thema: Delphi Grafik als screenshot

Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Grafik als screenshot

  Alt 25. Feb 2007, 20:41
Hallo,

mit deinem Code lädst du das Bild, und zeichnest es dann auf den Canvas der Paintbox und dann färbst du einige Bereiche auf dem Canvas der Paintbox ein.
Deine Bilddatei wird dadurch jedoch nicht geändert. Hier ist ein wenig Code, wie du deine gezeichneten Bereiche in die Bilddatei speicherst.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
   Bitmap1: TBitmap;
begin
  Bitmap1 := TBitmap.Create;
  try
    Bitmap1.LoadFromFile('DeutschUmriss.bmp');
    Bitmap1.Canvas.CopyRect(Rect(0, 0, Bitmap1.Width, Bitmap1.Height), PaintBox1.Canvas, Rect(0, 0, Bitmap1.Width, Bitmap1.Height));
    Bitmap1.SaveToFile('DeutschUmriss.bmp');//wird jetzt überschrieben!
  finally
    Bitmap1.Free;
  end;
end;
Wenn du Canvas deiner Paintbox ausdrucken möchtest, dann müsste es etwa so aussehen: (allerdings nicht getestet)
Delphi-Quellcode:
uses printers;

procedure TForm1.Button2Click(Sender: TObject);
var
   Bitmap1: TBitmap;
begin
  Bitmap1 := TBitmap.Create;
  try//oder du druckst den Bitmap1.Canvas aus(dann Code anpassen)
    Bitmap1.LoadFromFile('DeutschUmriss.bmp');//breite und höhe feststellen
    Printer.BeginDoc;
    Printer.Canvas.CopyRect(Rect(0, 0, Bitmap1.Width, Bitmap1.Height), PaintBox1.Canvas, Rect(0, 0, Bitmap1.Width, Bitmap1.Height));
    Printer.EndDoc;
  finally
    Bitmap1.Free;
  end;
end;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat