Gets the current display matrix used in this control.
public virtual Matrix Transform { get; }
Public Overridable ReadOnly Property Transform As Matrix
public:
virtual property Matrix Transform {
Matrix get();
}
A System.Windows.Media.Matrix that contains the current display matrix used in this control.
The Transform property will contain the accumulative transforms performed on the image before it is being displayed by the control. The following properties determine the final transformation of the image:
The control size
The image physical size in pixels and if using the image resolution is enabled with the UseDpi property
Any manual correction with the AspectRatioCorrection
The current zoom using the ScaleFactor property
The current display and automatic adjustment set with the SizeMode property
Image viewing transformation using the Flip, Reverse and RotateAngle properties
Although you can use the Transform property to calculate where a location or bounds on the image will be displayed on the control and vice versa using the Matrix.Transform methods, you can easily achieve this task with the control PointToImageCoordinates, BoundsToImageCoordinates, PointFromImageCoordinates and BoundsFromImageCoordinates methods
using Leadtools.Help;
using Leadtools.Windows.Controls;
private void viewer_TransformChanged(object sender, EventArgs e)
{
ImageBox viewer = sender as ImageBox;
string s = string.Format("TransformChanged Event: {0}", viewer.Transform.ToString());
MessageBox.Show(s);
}
public void ImageBox_TransformChanged(ImageBox viewer)
{
viewer.TransformChanged += new EventHandler(viewer_TransformChanged);
switch (viewer.SizeMode)
{
case SizeMode.Fit:
viewer.SizeMode = SizeMode.FitAlways;
break;
case SizeMode.FitAlways:
viewer.SizeMode = SizeMode.FitWidth;
break;
case SizeMode.FitWidth:
viewer.SizeMode = SizeMode.Normal;
break;
case SizeMode.Normal:
viewer.SizeMode = SizeMode.Stretch;
break;
case SizeMode.Stretch:
viewer.SizeMode = SizeMode.Fit;
break;
}
viewer.TransformChanged -= new EventHandler(viewer_TransformChanged);
}
Imports Leadtools.Windows.Controls
Private Sub viewer_TransformChanged(ByVal sender As Object, ByVal e As EventArgs)
Dim viewer As ImageBox = TryCast(sender, ImageBox)
Dim s As String = String.Format("TransformChanged Event: {0}", viewer.Transform.ToString())
MessageBox.Show(s)
End Sub
Public Sub ImageBox_TransformChanged(ByVal viewer As ImageBox)
AddHandler viewer.TransformChanged, AddressOf viewer_TransformChanged
Select Case viewer.SizeMode
Case SizeMode.Fit
viewer.SizeMode = SizeMode.FitAlways
Case SizeMode.FitAlways
viewer.SizeMode = SizeMode.FitWidth
Case SizeMode.FitWidth
viewer.SizeMode = SizeMode.Normal
Case SizeMode.Normal
viewer.SizeMode = SizeMode.Stretch
Case SizeMode.Stretch
viewer.SizeMode = SizeMode.Fit
End Select
RemoveHandler viewer.TransformChanged, AddressOf viewer_TransformChanged
End Sub
using Leadtools.Help;
using Leadtools.Windows.Controls;
private void viewer_TransformChanged(object sender, EventArgs e)
{
ImageBox viewer = sender as ImageBox;
string s = string.Format("TransformChanged Event: {0}", viewer.Transform.ToString());
MessageBox.Show(s);
}
public void ImageBox_TransformChanged(ImageBox viewer)
{
viewer.TransformChanged += new EventHandler(viewer_TransformChanged);
switch (viewer.SizeMode)
{
case SizeMode.Fit:
viewer.SizeMode = SizeMode.FitAlways;
break;
case SizeMode.FitAlways:
viewer.SizeMode = SizeMode.FitWidth;
break;
case SizeMode.FitWidth:
viewer.SizeMode = SizeMode.Normal;
break;
case SizeMode.Normal:
viewer.SizeMode = SizeMode.Stretch;
break;
case SizeMode.Stretch:
viewer.SizeMode = SizeMode.Fit;
break;
}
viewer.TransformChanged -= new EventHandler(viewer_TransformChanged);
}
Imports Leadtools.Windows.Controls
Private Sub viewer_TransformChanged(ByVal sender As Object, ByVal e As EventArgs)
Dim viewer As ImageBox = TryCast(sender, ImageBox)
Dim s As String = String.Format("TransformChanged Event: {0}", viewer.Transform.ToString())
MessageBox.Show(s)
End Sub
Public Sub ImageBox_TransformChanged(ByVal viewer As ImageBox)
AddHandler viewer.TransformChanged, AddressOf viewer_TransformChanged
Select Case viewer.SizeMode
Case SizeMode.Fit
viewer.SizeMode = SizeMode.FitAlways
Case SizeMode.FitAlways
viewer.SizeMode = SizeMode.FitWidth
Case SizeMode.FitWidth
viewer.SizeMode = SizeMode.Normal
Case SizeMode.Normal
viewer.SizeMode = SizeMode.Stretch
Case SizeMode.Stretch
viewer.SizeMode = SizeMode.Fit
End Select
RemoveHandler viewer.TransformChanged, AddressOf viewer_TransformChanged
End Sub
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET