내보내기(0) 인쇄
모두 확장
정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

ScaleTransform 클래스

2013-12-13

2차원 x-y 좌표계에서 개체의 배율을 조정합니다.

Namespace:  System.Windows.Media
어셈블리:  System.Windows(System.Windows.dll)
XMLNS for XAML: xmlns에 매핑되지 않습니다.

‘선언
Public NotInheritable Class ScaleTransform _
	Inherits Transform
<ScaleTransform .../>

ScaleTransform 형식에서는 다음과 같은 멤버를 노출합니다.

  이름설명
Public 메서드ScaleTransformScaleTransform 클래스의 새 인스턴스를 초기화합니다.
맨 위

  이름설명
Public 속성CenterXScaleTransform 중심점의 X 좌표를 가져오거나 설정합니다.
Public 속성CenterYScaleTransform 중심점의 Y 좌표를 가져오거나 설정합니다.
Public 속성Dispatcher이 개체와 관련된 Dispatcher를 가져옵니다. (DependencyObject에서 상속됨)
Public 속성Inverse이 변환의 역함수가 있는 경우 이를 가져옵니다. (Transform에서 상속됨)
Public 속성ScaleXX축 배율 인수를 가져오거나 설정합니다.
Public 속성ScaleYY축 배율 인수를 가져오거나 설정합니다.
맨 위

  이름설명
Public 메서드CheckAccess호출 스레드에서 이 개체에 액세스할 수 있는지 여부를 확인합니다. (DependencyObject에서 상속됨)
Public 메서드ClearValue종속성 속성의 로컬 값을 지웁니다. (DependencyObject에서 상속됨)
Public 메서드Equals(Object)지정한 Object가 현재 Object와 같은지 확인합니다. (Object에서 상속됨)
Protected 메서드Finalize가비지 수집기에서 Object를 회수하기 전에 개체가 리소스를 해제하고 다른 정리 작업을 수행할 수 있게 합니다. (Object에서 상속됨)
Public 메서드GetAnimationBaseValueWindows Phone 종속성 속성에 대해 설정되어 있고 애니메이션이 활성 상태가 아닐 때 적용되는 기준 값을 반환합니다. (DependencyObject에서 상속됨)
Public 메서드GetHashCode특정 형식에 대한 해시 함수 역할을 합니다. (Object에서 상속됨)
Public 메서드GetType현재 인스턴스의 Type을 가져옵니다. (Object에서 상속됨)
Public 메서드GetValueDependencyObject에서 종속성 속성의 현재 유효 값을 반환합니다. (DependencyObject에서 상속됨)
Protected 메서드MemberwiseClone현재 Object의 단순 복사본을 만듭니다. (Object에서 상속됨)
Public 메서드ReadLocalValue로컬 값이 설정된 경우, 종속성 속성의 로컬 값을 반환합니다. (DependencyObject에서 상속됨)
Public 메서드SetValueDependencyObject에 종속성 속성의 로컬 값을 설정합니다. (DependencyObject에서 상속됨)
Public 메서드ToString현재 개체를 나타내는 문자열을 반환합니다. (Object에서 상속됨)
Public 메서드Transform지정된 점을 변환하고 결과를 반환합니다. (GeneralTransform에서 상속됨)
Public 메서드TransformBounds지정한 경계 상자를 변환한 다음 해당 경계 상자를 포함할 수 있는 크기의 축에 맞춰진 경계 상자를 반환합니다. (Transform에서 상속됨)
Public 메서드TryTransform지정한 점의 변환을 시도한 후 변환의 성공 여부를 나타내는 값을 반환합니다. (Transform에서 상속됨)
맨 위

  이름설명
Public 필드정적 멤버CenterXPropertyCenterX 종속성 속성을 식별합니다.
Public 필드정적 멤버CenterYPropertyCenterY 종속성 속성을 식별합니다.
Public 필드정적 멤버ScaleXPropertyScaleX 종속성 속성을 식별합니다.
Public 필드정적 멤버ScaleYPropertyScaleY 종속성 속성을 식별합니다.
맨 위

개체를 가로 또는 세로로 늘이거나 줄이려면 ScaleTransform을 사용합니다. ScaleX 속성은 X축을 따라 개체를 얼마나 늘이거나 줄일지를 지정하며, ScaleY 속성은 Y축을 따라 개체를 얼마나 늘이거나 줄일지를 지정합니다. 배율 조정 작업은 CenterXCenterY 속성에서 지정한 점을 중심으로 수행됩니다.

개체의 원점 0,0은 Canvas.LeftCanvas.Top을 사용하여 Canvas에서 오프셋될 수 있지만 이 경우 개체가 변환을 위해 자체 원점 0,0을 유지하기 때문에 변환으로 계산되지는 않습니다.

TransformGroup을 사용하여 여러 변환을 적용할 수 있습니다. 사용자 지정 변환은 MatrixTransform을 사용하여 만들 수 있습니다.

변환은 장식 효과를 생성하기 위해 응용프로그램의 텍스트 표시를 변경할 수 있습니다. 다음 그림에서는 x축 방향으로 150% 확대한 둘째 줄 텍스트와 y축 방향으로 150% 확대한 셋째 줄 텍스트를 보여 줍니다.

ScaleTransform을 사용하는 TextBlock

Transformed text.
참고참고:

텍스트의 배율을 조정하는 것은 텍스트의 글꼴 크기를 늘리는 것과 다릅니다. 글꼴 크기는 다양한 크기에서 최상의 해상도를 제공하기 위해 서로 독립적으로 계산되는 반면 배율이 조정된 텍스트는 원래 크기 텍스트의 비율을 유지합니다.

다음 XAML 예제에서는 ScaleTransform을 사용하여 원래 크기와 다르게 텍스트의 배율을 조정합니다.


<StackPanel>
<TextBlock
  FontFamily="Verdana"
  FontSize="32"
  FontWeight="Bold" 
  Foreground="SteelBlue"
  Text="Scaled Text" />

<!-- Scale the text width using a ScaleTransform. -->
<TextBlock
  FontFamily="Verdana"
  FontSize="32"
  FontWeight="Bold" 
  Foreground="SteelBlue"
  Text="Scaled Text">
  <TextBlock.RenderTransform>
    <ScaleTransform ScaleX="1.5" ScaleY="1.0" />
  </TextBlock.RenderTransform>
</TextBlock>

<!-- Scale the text height using a ScaleTransform. -->
<TextBlock
  FontFamily="Verdana"
  FontSize="32"
  FontWeight="Bold" 
  Foreground="SteelBlue"
  Text="Scaled Text">
  <TextBlock.RenderTransform>
    <ScaleTransform ScaleX="1.0" ScaleY="1.5" />
  </TextBlock.RenderTransform>
</TextBlock>
</StackPanel>


코드를 사용하여 Transform 개체에 액세스하고 이 개체를 조작할 수 있습니다. 이렇게 하는 방법 중 하나는 Transform에 이름을 지정한 다음 코드를 사용하여 이 개체에 액세스하는 것입니다. 다음 예제에서는 Rectangle을 클릭할 때마다 Rectangle에 적용된 ScaleTransformScaleXScaleY 속성 값을 늘리는 방법을 보여 줍니다.


<StackPanel>
  <Rectangle MouseLeftButtonDown="HandleMouseButtonDown"
    Width="50" Height="50" Fill="RoyalBlue">
    <Rectangle.RenderTransform>

      <!-- If you give the transform a name you can 
        access it easily from code. -->
      <ScaleTransform x:Name="myScaleTransform" />
    </Rectangle.RenderTransform>
  </Rectangle>
</StackPanel>



Private Sub HandleMouseButtonDown(ByVal sender As Object, ByVal e As MouseButtonEventArgs)
    ' Increase ScaleX and ScaleY by 25%.
    myScaleTransform.ScaleX = (myScaleTransform.ScaleX * 1.25)
    myScaleTransform.ScaleY = (myScaleTransform.ScaleY * 1.25)
End Sub


Windows Phone OS

지원되는 버전: 8.0, 7.1, 7.0

Windows Phone

이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 모든 인스턴스 멤버는 스레드로부터 안전하지 않을 수 있습니다.

표시:
© 2014 Microsoft