我想为图像文件添加阴影。最好的方法是什么? 我考虑过创建WPF图像控件并添加位图效果..但是如何将结果保存到文件中呢?

谢谢,Eric

有帮助吗?

解决方案

您可以使用RenderTargetBitmap和Encoder来执行此操作。编码器可以是Png,Jpeg等。 下面的代码imgControl代表你的Image控件。但由于它是位图效果,您可能需要将此Image放在网格中并提供相当于Drophadow的适当边距,然后使用下面代码中的网格而不是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);
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top