ImageBrush 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
이미지로 영역을 그립니다. 이미지 원본은 일반적으로 JPEG(Joint Photographic Experts Group)와 같은 파일 형식에서 가져옵니다.
public ref class ImageBrush sealed : TileBrush
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ImageBrush final : TileBrush
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.UI.Xaml.WinUIContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class ImageBrush : TileBrush
Public NotInheritable Class ImageBrush
Inherits TileBrush
<ImageBrush .../>
- 상속
- 특성
예제
이 XAML 예제에서는 TextBlock의 Foreground 속성을 ImageBrush 로 설정하는 방법을 보여 하며, 해당 이미지는 TextBlock 렌더링 텍스트의 채우기로 사용됩니다.
<!-- TextBlock with an image brush applied to the text. -->
<TextBlock FontFamily="Verdana" FontSize="72"
FontStyle="Italic" FontWeight="Bold">
SHRUBBERY
<TextBlock.Foreground>
<ImageBrush ImageSource="forest.jpeg"/>
</TextBlock.Foreground>
</TextBlock>
설명
ImageBrush는 필요에 따라 확장 및 정렬할 수 있는 이미지로 콘텐츠를 정의하는 브러시 유형입니다. ImageBrush의 용도에는 텍스트에 대한 장식 효과 또는 컨트롤 또는 레이아웃 컨테이너에 대한 이미지 배경이 포함됩니다.
두 가지 기본 시나리오에서 Image 컨트롤 대신 ImageBrush를 사용하는 것이 유용합니다.
- 타원 또는 테두리와 같은 직사각형이 아닌 영역을 이미지로 그리려고 합니다.
- 단일 ImageBrush를 사용하여 여러 이미지 컨트롤을 사용하는 것보다 더 효율적인 동일한 이미지로 여러 영역 또는 UIElement를 그리려고 합니다.
코드를 사용하여 ImageBrush를 정의하는 경우 기본 생성자를 사용한 다음 ImageBrush.ImageSource를 설정합니다. 이를 위해서는 코드에 BitmapImage (URI(Uniform Resource Identifier)가 아님)가 필요합니다. 원본이 스트림이면 SetSourceAsync 메서드를 사용하여 값을 초기화합니다. 원본이 ms-appx 또는 ms-resource 체계를 사용하는 앱의 콘텐츠를 포함하는 URI(Uniform Resource Identifier) 인 경우 URI(Uniform Resource Identifier)를 사용하는 BitmapImage 생성자를 사용합니다. 또한 이미지 소스를 검색하거나 디코딩하는 데 타이밍 문제가 있는 경우 ImageOpened 이벤트 처리를 고려할 수 있으며, 이미지 소스를 사용할 수 있을 때까지 표시할 대체 콘텐츠가 필요할 수 있습니다. 예제 코드 는 XAML 이미지 샘플을 참조하세요.
참고
현재 크기 조정 및 문화권 한정자를 사용하여 정규화되지 않은 리소스에 액세스하기 위해 자동 처리를 사용하거나 Culture 및 scale에 대한 한정 자와 함께 ResourceManager 및 ResourceMap 을 사용하여 리소스를 직접 가져올 수 있습니다. 자세한 내용은 리소스 관리 시스템을 참조하세요.
Stretch 속성은 브러시로 사용할 때 이미지를 적용하는 방법에 중요합니다. 채우기 동작을 사용하여 특정 Brush 속성에 적용된 대로 늘어나면 일부 이미지가 잘 보이는 반면, 다른 이미지는 확장 또는 배율을 잘 조정하지 않으며 None 또는 Uniform for Stretch 값이 필요할 수 있습니다. Stretch에 대해 다른 값을 실험하여 UI에 적용할 때 가장 잘 보이는 동작을 확인합니다.
이미지 원본 및 크기 조정
Windows 8 크기를 조정할 때 앱이 멋지게 보이도록 몇 가지 권장 크기로 이미지 원본을 만들어야 합니다. ImageBrush에 대해 ImageSource 를 지정할 때 현재 크기 조정에 대한 올바른 리소스를 자동으로 참조하는 명명 규칙을 사용할 수 있습니다. 명명 규칙의 특성 및 자세한 내용은 빠른 시작: 파일 또는 이미지 리소스 사용을 참조하세요.
크기 조정을 위해 디자인하는 방법에 대한 자세한 내용은 레이아웃 및 크기 조정에 대한 UX 지침을 참조하세요.
생성자
ImageBrush() |
ImageBrush 클래스의 새 instance 초기화합니다. |
속성
AlignmentX |
TileBrush 기본 타일에서 콘텐츠의 가로 맞춤을 가져오거나 설정합니다. (다음에서 상속됨 TileBrush) |
AlignmentY |
TileBrush 기본 타일에서 콘텐츠의 세로 맞춤을 가져오거나 설정합니다. (다음에서 상속됨 TileBrush) |
Dispatcher |
항상 Windows 앱 SDK 앱에서 를 반환 |
DispatcherQueue |
|
ImageSource |
이 ImageBrush에 표시되는 이미지 원본을 가져오거나 설정합니다. 코드에서 ImageSource 하위 클래스 instance 사용하여 이 설정을 XAML에서 URI를 사용하여 이미지 원본 파일로 설정합니다. |
ImageSourceProperty |
ImageSource 종속성 속성을 식별합니다. |
Opacity |
브러시의 불투명도를 가져오거나 설정합니다. (다음에서 상속됨 Brush) |
RelativeTransform |
상대 좌표를 사용하여 브러시에 적용되는 변형을 가져오거나 설정합니다. (다음에서 상속됨 Brush) |
Stretch |
이 TileBrush 의 콘텐츠가 타일에 맞게 확장되는 방식을 지정하는 값을 가져오거나 설정합니다. (다음에서 상속됨 TileBrush) |
Transform |
브러시에 적용되는 변형을 가져오거나 설정합니다. (다음에서 상속됨 Brush) |
메서드
이벤트
ImageFailed |
이미지 검색 또는 형식과 관련된 오류가 있을 때 발생합니다. |
ImageOpened |
이미지 원본을 다운로드하고 오류 없이 디코딩할 때 발생합니다. 이 이벤트를 사용하여 렌더링하기 전에 이미지의 크기를 확인할 수 있습니다. |