私はメディア要素を使用したいが、ビデオ矩形の一部だけを表示したい。一部のビデオをMediaElementに表示
たとえば、動画が100×100ピクセルの場合は、動画の左半分、たとえば左側の50×100ピクセルを表示したいとします。
私はメディア要素を使用したいが、ビデオ矩形の一部だけを表示したい。一部のビデオをMediaElementに表示
たとえば、動画が100×100ピクセルの場合は、動画の左半分、たとえば左側の50×100ピクセルを表示したいとします。
あなたはこのビデオをトリミングし、true
に負Margins
とClipToBounds
セットでContentPresenter
にそれを置くことができます。
MediaElementのClipプロパティを設定することでこれを行うことができます。任意のPathGeometryに設定できます。以下は簡単な例です。
XAML:
<Window x:Class="Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="378" Width="472">
<Canvas>
<MediaElement LoadedBehavior="Play" Name="myME" Source="c:\\1.wmv" Width="320" Height="240" Canvas.Left="0" Canvas.Top="0">
</MediaElement>
</Canvas>
</Window>
C#
using System;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace tests
{
/// <summary>
/// Interaction logic for Window1.xaml
/// </summary>
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
this.MyMedia1.Clip =
new RectangleGeometry(new Rect(0, 0, myME.Width/3, myME.Height));
}
}
}