Autor Beitrag
labertasche
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mo 25.02.13 17:24 
Hallo @all,
ich möchte mich gerne etwas in firemokey einarbeiten.
Meine erste Aufgabe die ich mir gestellt habe ist es ein Bild (pixelweise) selbst zu zeichnen.
Also ich dachte ich nehme mir ein TPaintBox und greife denn über canvas pixel zu aber geht nicht.
Nun google ich schon seit mehr als zwei stunden und finde keine richtige anwort.
Weiss jemand welche Möglichkeit ich in Firemonkey habe mir pixelweise ein bild zu zeichnen und dieses denn zu speichern?
Ich freue mich über eure tipps.
danke labertasche
sternbach
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 31
Erhaltene Danke: 4



BeitragVerfasst: Do 11.04.13 14:32 
Hallo labertasche,

wenn du Xe3 verwendest, dann kannst du wie folgt auf die Pixels zugreifen:
(Und interessant... ms-help://embarcadero.rs_xe3/libraries/FMX.Types.TBitmapData.html)

Beispiel setzt ein schwarzes Pixel bei 0,0, kein Antialiasing, keine Single Werte, Pixel bleibt Pixel...
Bitmap speichert sich in 'c:\test\', dieser Ordner sollte existieren :)


HTH!

Peter

ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
procedure TForm1.Test;

  var ABmp                                           : TBitmap;
      ABmpData                                       : TBitmapData;

  begin
    try
      ABmp := TBitmap.create(10,10);
      ABmp.Clear(TAlphaColorRec.White);
      Abmp.Map(TMapAccess.maWrite, ABmpData);
      (** Pixel setzen **)
      ABmp.SetPixel(0, 0, TAlphaColorRec.Black);
      (** speichern **)
      ABmp.SaveToFile('c:\Test\Test.png') ; // Format wird automatisch ermittelt... 
    finally
      ABmp.Unmap(ABmpData);
      ABmp.Free;
    end
  end;