LEADTOOLS Windows Forms (Leadtools.WinForms assembly)

BeginUpdate Method (RasterImageViewer)

Show in webframe
Example 





Prevents the control from drawing until the EndUpdate method is called.
Syntax
public virtual void BeginUpdate()
'Declaration
 
Public Overridable Sub BeginUpdate() 
'Usage
 
Dim instance As RasterImageViewer
 
instance.BeginUpdate()

            

            
public:
virtual void BeginUpdate(); 
Remarks
When you want to disable repainting of the viewer, call BeginUpdate.
When you are ready to resume painting call EndUpdate.
Example
Copy Code  
Imports Leadtools.WinForms
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.ImageProcessing.Color
Imports Leadtools.Drawing

''' 
' center the loaded image in the middle of rasterImageViewer if the image smaller than the viewer size 
Private Sub centerImage(ByVal viewer As RasterImageViewer)
   ' do center only when RasterViewerSizeMode == Normal
   If viewer.SizeMode = RasterPaintSizeMode.Normal Then
      If viewer.IsImageAvailable = True Then
         If Not viewer.Image Is Nothing Then
            Dim viewerWidth As Integer = viewer.Right - viewer.Left
            Dim viewerHeight As Integer = viewer.Bottom - viewer.Top
            Dim imageWidth As Integer = CInt(viewer.LogicalViewRectangle.Width * viewer.ScaleFactor)
            Dim imageHeight As Integer = CInt(viewer.LogicalViewRectangle.Height * viewer.ScaleFactor)
            If imageWidth < viewerWidth Then
               viewer.BorderPadding.Left = (viewerWidth - imageWidth) \ 2
            Else
               viewer.BorderPadding.Left = 0
            End If

            If imageHeight < viewerHeight Then
               viewer.BorderPadding.Top = (viewerHeight - imageHeight) \ 2
            Else
               viewer.BorderPadding.Top = 0
            End If
         End If
      End If
   End If
End Sub

Private Sub viewer_TransformedChanged(ByVal sender As Object, ByVal e As EventArgs)
   Dim viewer As RasterImageViewer = CType(IIf(TypeOf sender Is RasterImageViewer, sender, Nothing), RasterImageViewer)
   Dim s As String = String.Format("Transform: {0} {1} {2} {3} {4} {5}", viewer.Transform.Elements(0), viewer.Transform.Elements(1), _
                                   viewer.Transform.Elements(2), viewer.Transform.Elements(3), viewer.Transform.Elements(4), _
                                   viewer.Transform.Elements(5))

   Console.WriteLine(s)
End Sub

Public Sub RasterImageViewer_BeginUpdate(ByVal viewer As RasterImageViewer)
   AddHandler viewer.TransformChanged, AddressOf viewer_TransformedChanged

   viewer.BeginUpdate() ' suspend painting of the image
   viewer.ScaleFactor = viewer.ScaleFactor * 0.9F
   centerImage(viewer)
   viewer.EndUpdate() ' start painting of the image

   RemoveHandler viewer.TransformChanged, AddressOf viewer_TransformedChanged
End Sub
using Leadtools.WinForms;
using Leadtools;
using Leadtools.Codecs;
using Leadtools.ImageProcessing.Color;
using Leadtools.Drawing;

/// 
// center the loaded image in the middle of rasterImageViewer if the image smaller than the viewer size 
private void centerImage(RasterImageViewer viewer)
{
   // do center only when RasterViewerSizeMode == Normal
   if (viewer.SizeMode == RasterPaintSizeMode.Normal)
   {
      if (viewer.IsImageAvailable == true)
      {
         if (viewer.Image != null)
         {
            int viewerWidth = viewer.Right - viewer.Left;
            int viewerHeight = viewer.Bottom - viewer.Top;
            int imageWidth = (int)(viewer.LogicalViewRectangle.Width * viewer.ScaleFactor);
            int imageHeight = (int)(viewer.LogicalViewRectangle.Height * viewer.ScaleFactor);
            if (imageWidth < viewerWidth)
               viewer.BorderPadding.Left = (viewerWidth - imageWidth) / 2;
            else
               viewer.BorderPadding.Left = 0;

            if (imageHeight < viewerHeight)
               viewer.BorderPadding.Top = (viewerHeight - imageHeight) / 2;
            else
               viewer.BorderPadding.Top = 0;
         }
      }
   }
}

private void viewer_TransformedChanged(object sender, EventArgs e)
{
   RasterImageViewer viewer = sender as RasterImageViewer;
   string s = string.Format("Transform: {0} {1} {2} {3} {4} {5}",
      viewer.Transform.Elements[0],
      viewer.Transform.Elements[1],
      viewer.Transform.Elements[2],
      viewer.Transform.Elements[3],
      viewer.Transform.Elements[4],
      viewer.Transform.Elements[5]);

   Console.WriteLine(s);
}

public void RasterImageViewer_BeginUpdate(RasterImageViewer viewer)
{
   viewer.TransformChanged += new EventHandler(viewer_TransformedChanged);

   viewer.BeginUpdate();  // suspend painting of the image 
   viewer.ScaleFactor = viewer.ScaleFactor * 0.9F;
   centerImage(viewer);
   viewer.EndUpdate(); // start painting of the image 

   viewer.TransformChanged -= new EventHandler(viewer_TransformedChanged);
}
Requirements

Target Platforms

See Also

Reference

RasterImageViewer Class
RasterImageViewer Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 All Rights Reserved. LEAD Technologies, Inc.