Mirror Bitmap | Tutorial Delphi | Efek mirror berfungsi seperti kita bercermin, secara horisontal, kanan kiri membalik, secara vertikal atas bawah membalik. Efek mirror yang dimaksud pada dasarnya hanya mengcopy bitmap dari satu rectangle ke rectangle yang lainnya. Perintah tersebut dijalankan dengan mengeksekusi fungsi StretchBlt .
Untuk mencoba mirror vertikal dan horisontal, ini dia langkah-langkanya :
1. Menambahkan 2 komponen TImage dan TButton. Isika propety picture pada Image1 dengan bitmap yang akan dimirror. O iya file extensinya bitmap ya.
2. Membuat prosedure untuk mirror vertikal.
procedure TForm1.mirror_vertikal(asal,tujuan : TBitMap);
begin
tujuan.Assign(nil);
tujuan.Width := asal.Width;
tujuan.Height := asal.Height;
StretchBlt(tujuan.Canvas.Handle,0,0,tujuan.Width,tujuan.Height,
asal.Canvas.Handle,0,asal.Height,asal.Width,-asal.Height,srccopy);
asal.Canvas.Handle,0,asal.Height,asal.Width,-asal.Height,srccopy);
end;
3. Membuat prosedure untuk mirror horisontal.
procedure TForm1.mirror_horisontal(asal,tujuan : TBitMap);
begin
tujuan.Assign(nil);
tujuan.Width := asal.Width;
tujuan.Height := asal.Height;
StretchBlt(tujuan.Canvas.Handle,0,0,tujuan.Width,tujuan.Height,
asal.Canvas.Handle,asal.Width,0,-asal.Width,asal.Height,srccopy);
asal.Canvas.Handle,asal.Width,0,-asal.Width,asal.Height,srccopy);
end;
4. Membuat prosedure menjalankan mirror vertikal
procedure TForm1.Button2Click(Sender: TObject);
var
temp : TBitMap;
begin
temp := TBitMap.Create;
temp.Assign(Image1.Picture.Bitmap);
mirror_vertikal(temp,image2.Picture.Bitmap);
temp.Free;
end;
5. Membuat prosedure menjalankan mirror horisontal
procedure TForm1.Button1Click(Sender: TObject);
var
temp : TBitMap;
begin
temp := TBitMap.Create;
temp.Assign(Image1.Picture.Bitmap);
mirror_horisontal(temp,image2.Picture.Bitmap);
temp.Free;
end;
Langsung simpan dan running aplikasinya, ini dia masing-masing hasilnya untuk mirror vertikal dan horisontal.
Yaaa…itu hanya sedikit sharing pengalaman, heeeee…Cuma sederhana saja,,,maap yaa…
Salam damai, senajan kenthir nanging kebak pikir
Semoga bermanfaat….