Share via


방법: 비디오로 영역 그리기

업데이트: 2007년 11월

이 예제에서는 미디어를 사용하여 영역을 그리는 방법을 보여 줍니다. 미디어로 영역을 그리는 한 가지 방법은 MediaElementVisualBrush를 함께 사용하는 것입니다. MediaElement를 사용하여 미디어를 로드 및 재생하고 이 미디어를 사용하여 VisualBrushVisual 속성을 설정합니다. 그런 다음 VisualBrush를 사용하여 로드된 미디어로 영역을 그릴 수 있습니다.

예제

다음 예제에서는 MediaElementVisualBrush를 사용하여 비디오로 TextBlock 컨트롤의 Foreground를 그립니다. 이 예제는 MediaElementIsMuted 속성을 true로 설정하므로 사운드가 재생되지 않습니다.

MediaElement myMediaElement = new MediaElement();
myMediaElement.Source = new Uri("sampleMedia\\xbox.wmv", UriKind.Relative);
myMediaElement.IsMuted = true;

VisualBrush myVisualBrush = new VisualBrush();
myVisualBrush.Visual = myMediaElement;

TextBlock myTextBlock = new TextBlock();
myTextBlock.FontSize = 150;
myTextBlock.Text = "Some Text";
myTextBlock.FontWeight = FontWeights.Bold;

myTextBlock.Foreground = myVisualBrush;
<TextBlock FontSize="100pt" Text="Some Text" FontWeight="Bold">
  <TextBlock.Foreground>
    <VisualBrush>
      <VisualBrush.Visual>
        <MediaElement Source="sampleMedia\xbox.wmv" IsMuted="True" />
      </VisualBrush.Visual>
    </VisualBrush>
  </TextBlock.Foreground>
</TextBlock>

VisualBrushTileBrush 클래스에서 상속되기 때문에 몇 가지 바둑판식 배열 모드도 제공합니다. VisualBrushTileMode 속성을 Tile로 설정하고 해당 Viewport 속성을 그리려는 영역보다 작은 값으로 설정하면 바둑판식 배열 패턴을 만들 수 있습니다.

다음 예제는 VisualBrush가 비디오에서 패턴을 생성한다는 점만 제외하고 이전 예제와 동일합니다.

MediaElement myMediaElement = new MediaElement();
myMediaElement.Source = new Uri("sampleMedia\\xbox.wmv", UriKind.Relative);
myMediaElement.IsMuted = true;

VisualBrush myVisualBrush = new VisualBrush();
myVisualBrush.Viewport = new Rect(0, 0, 0.5, 0.5);
myVisualBrush.TileMode = TileMode.Tile;
myVisualBrush.Visual = myMediaElement;

TextBlock myTextBlock = new TextBlock();
myTextBlock.FontSize = 150;
myTextBlock.Text = "Some Text";
myTextBlock.FontWeight = FontWeights.Bold;

myTextBlock.Foreground = myVisualBrush;
<TextBlock FontSize="100pt" Text="Some Text" FontWeight="Bold">
  <TextBlock.Foreground>
    <VisualBrush Viewport="0,0,0.5,0.5" TileMode="Tile">
      <VisualBrush.Visual>

        <MediaElement Source="sampleMedia\xbox.wmv" IsMuted="True" /> 
      </VisualBrush.Visual>
    </VisualBrush>
  </TextBlock.Foreground>
</TextBlock>

응용 프로그램에 미디어 파일과 같은 콘텐츠 파일을 추가하는 방법에 대한 자세한 내용은 Windows Presentation Foundation 응용 프로그램 리소스, 콘텐츠 및 데이터 파일을 참조하십시오. 미디어 파일을 추가할 때는 리소스 파일이 아닌 콘텐츠 파일로 추가해야 합니다.

참고 항목

개념

이미지, 그림 및 시각적 표시로 그리기

TileBrush 개요

멀티미디어 개요

참조

VisualBrush