В WPF у меня есть пользовательский контроль пользователя. Я осматриваю событие OnRender и рисую видео с помощью медиаплеера. Затем я накладываю растровое изображение на альфа-прозрачность. Это все отлично работает. видео воспроизводится и отображает растровое наложение без проблем. Но затем мне нужно нажать кнопку, чтобы сделать снимок текущего видеокадра с включенным растровым наложением и сохранить его в растровом изображении. Пользователь может нажать кнопку в любое время, когда видео запущено или приостановлено.
Это код, который у меня есть. Это работает хорошо. Как получить снимок текущего видеокадра и растрового наложения при нажатии кнопки. Как получить две комбинации из контекста устройства непосредственно после того, как наложение происходит внутри события onrender
protected override void OnRender(DrawingContext drawingContext)
{
base.OnRender(drawingContext);
if (_mediaPlayer != null && _mediaPlayer.Source != null && !string.IsNullOrEmpty(_mediaPlayer.Source.ToString()))
drawingContext.DrawVideo(_mediaPlayer, new Rect(0, 0, this.ActualWidth, this.ActualHeight));
if (_bitmapImageOverlay != null)
drawingContext.DrawImage(_bitmapImageOverlay, new Rect(0, 0, this.ActualWidth, this.ActualHeight));
}