質問
ドロップシャドウを画像ファイルに追加したい。それを行う最良の方法は何ですか? WPF Imageコントロールを作成し、ビットマップ効果を追加することを考えました。しかし、どのように結果をファイルに保存できますか?
ありがとう、エリック
解決
これを行うには、RenderTargetBitmapとエンコーダーを使用できます。エンコーダーは、Png、Jpegなどにすることができます。 以下のコードimgControlは、Imageコントロールを表します。ただし、ビットマップ効果であるため、この画像をグリッド内に配置し、ドロップシャドウに相当する適切なマージンを与えてから、imgControlの代わりに以下のコードでグリッドを使用する必要があります。
double Height = imgControl.ActualHeight;
double Width = imgControl.ActualWidth;
RenderTargetBitmap bmp = new RenderTargetBitmap((int)Width, (int)Height,
96, 96, PixelFormats.Pbgra32);
bmp.Render(imgControl);
BitmapEncoder encoder = new JpegBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(bmp));
using (Stream stream = File.Create("Yourfile.jpeg"))
{
encoder.Save(stream);
}
所属していません StackOverflow