wpf コントロールをファイルに保存しようとしていますが、それに PixelShader 効果を適用しています。保存しようとすると、保存された画像が完全に白、黒、または赤になります...効果のパラメーターによって異なります.
ここでコードを使用しています: WPF - BitmapEffect でのプログラムによるバインド
どうすれば適切に保存できますか?
ありがとう!
更新:私が使用しているコードは次のとおりです。
BitmapSource bitmap = preview.Source as BitmapImage;
Rectangle r = new Rectangle();
r.Fill = new ImageBrush(bitmap);
r.Effect = effect;
Size sz = new Size(bitmap.PixelWidth, bitmap.PixelHeight);
r.Measure(sz);
r.Arrange(new Rect(sz));
var rtb = new RenderTargetBitmap(bitmap.PixelWidth, bitmap.PixelHeight, bitmap.DpiX, bitmap.DpiY, PixelFormats.Pbgra32);
rtb.Render(r);
PngBitmapEncoder png = new PngBitmapEncoder();
png.Frames.Add(BitmapFrame.Create(rtb));
Stream stm = File.Create("new.png");
png.Save(stm);
stm.Close();