トップへ(mam-mam.net/)

FMXでビットマップにエフェクト(BlurEffect等)を行った後の画像を取得したい

検索:

「FMXでビットマップにエフェクト(BlurEffect等)を行った後の画像を取得したい」

FMXでビットマップにエフェクト(BlurEffect等)を行った後の画像を取得するにはどうすればよいか?

回答

Fomr1の上にImage1とImage2があり、Image1にエフェクトをかけたい画像を読みこんでいて、
Image1の上にBlurEffect1がある状態とします。
ボタンを押すと、エフェクトがかかったImage1の画像をImage2に表示するとします。

Form1
├Image1
│ └BlurEffect1
└Image2

以下の2行のソースコードで可能です。

ソース

procedure TForm1.Button1Click(Sender: TObject);
begin
  Image2.Bitmap:=Image1.MakeScreenshot;
  BlurEffect1.ProcessEffect(Image2.Bitmap.Canvas,Image2.Bitmap,1);
end;