ばかげた質問かもしれませんが、正しい答えを見つけるのにいくつか問題があります:S
フレームをBitmap
「s」またはImage
「s」(または同様のもの)として取得するにはどうすればよいDrawingGroup
ですか?私は実際にそれを噛む方法を知りません。インターネットで探してみましたが、何か役に立つものを見つけるのに苦労しました。
画像コントロールのソースとして使用する画像が必要な場合は、図面をDrawingImageに配置するだけです。
var drawing = ...
var drawingImage = new DrawingImage(drawing);
image.Source = drawingImage;
質問がBitmapSource (つまり、 BitmapFrameを介してBitmapEncoderでエンコードできるもの)の作成に関するものである場合、直接変換はありません。画像を中間の画像コントロールに配置し、そのコントロールをBitmapSourceであるRenderTargetBitmapにレンダリングする必要があります。
var drawing = ...
var drawingImage = new DrawingImage(drawing);
var image = new Image { Source = drawingImage };
var bitmap = new RenderTargetBitmap(100, 100, 96, 96, PixelFormats.Pbgra32);
image.Arrange(new Rect(0, 0, bitmap.Width, bitmap.Height));
bitmap.Render(image);