Stroke.Transform 메서드 (Matrix, Boolean)
업데이트: 2007년 11월
펜 너비에 변환을 적용하는 옵션을 사용하여 Stroke 개체에 선형 변환을 적용합니다.
네임스페이스: Microsoft.Ink
어셈블리: Microsoft.Ink(Microsoft.Ink.dll)
구문
‘선언
Public Sub Transform ( _
inkTransform As Matrix, _
applyOnPenWidth As Boolean _
)
‘사용 방법
Dim instance As Stroke
Dim inkTransform As Matrix
Dim applyOnPenWidth As Boolean
instance.Transform(inkTransform, applyOnPenWidth)
public void Transform(
Matrix inkTransform,
bool applyOnPenWidth
)
public:
void Transform(
Matrix^ inkTransform,
bool applyOnPenWidth
)
public void Transform(
Matrix inkTransform,
boolean applyOnPenWidth
)
public function Transform(
inkTransform : Matrix,
applyOnPenWidth : boolean
)
매개 변수
- inkTransform
형식: System.Drawing.Drawing2D.Matrix
Stroke 개체에 사용할 System.Drawing.Drawing2D.Matrix 변환입니다.
- applyOnPenWidth
형식: System.Boolean
Stroke 개체의 DrawingAttributes에서 잉크 너비에 변환을 적용할지 여부를 나타내는 부울 값입니다.값
의미
true
점과 펜 너비 모두에 변환이 적용됩니다.
false
변환이 점에만 적용됩니다.
설명
선형 변환은 배율 조정, 회전, 이동 및 이러한 변환의 조합을 나타낼 수 있습니다.
펜 너비의 배율이 변환에 맞게 적절히 조정되는 경우 그려지는 펜 너비는 지정된 펜 너비(지정되어 있지 않은 경우에는 기본값인 53)와 변환 행렬식의 제곱근을 곱하여 계산합니다.
예제
이 C# 예제에서는 스트로크의 경계 상자를 기준으로 두 배만큼 Stroke 개체인 theStroke의 배율을 조정합니다. 잉크 너비의 배율도 두 배로 조정됩니다.
using System.Drawing.Drawing2D;
//...
Matrix inkTransform = new Matrix();
Rectangle inkBounds = theStroke.GetBoundingBox();
PointF center = new PointF(0.5f * (inkBounds.Left + inkBounds.Right),
0.5f * (inkBounds.Top + inkBounds.Bottom));
// Translate to center of bounding box
inkTransform.Translate(center.X, center.Y);
// Scale by factor of 2
inkTransform.Scale(2.0F, 2.0F);
// Translate back
inkTransform.Translate(-center.X, -center.Y);
// Transform stroke
theStroke.Transform(inkTransform, true);
이 Microsoft Visual Basic .NET 예제에서는 스트로크의 경계 상자를 기준으로 두 배만큼 Stroke 개체인 theStroke의 배율을 조정합니다. 잉크 너비의 배율도 두 배로 조정됩니다.
Imports System.Drawing.Drawing2D
'...
Dim inkTransform As New Matrix()
Dim inkBounds As Rectangle = theStroke.GetBoundingBox()
Dim center As New PointF(0.5F * (inkBounds.Left + inkBounds.Right), _
0.5F * (inkBounds.Top + inkBounds.Bottom))
'Translate to center of bounding box
inkTransform.Translate(center.X, center.Y)
'Scale by a factor of 2
inkTransform.Scale(2.0F, 2.0F)
'Translate back
inkTransform.Translate(-center.X, -center.Y)
'Transform stroke
theStroke.Transform(inkTransform, True)
플랫폼
Windows Vista
.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
3.0에서 지원