←Select platform

ImageBounds Property

Summary

Physical position and size of the image in the viewer (single item mode).

Syntax
C#
C++/CLI
public LeadRect ImageBounds { get; } 
public:  
   property LeadRect^ ImageBounds 
   { 
      LeadRect^ get() 
   } 

Property Value

The physical position and size of the image in pixels (single item mode).

Remarks

This is a helper property for applications that use ImageViewer in single item mode. It is a shortcut to GetItemViewBounds using ActiveItem. For more information, refer to Image Viewer in Single Item Mode.

Example
C#
using Leadtools; 
using Leadtools.Controls; 
using Leadtools.Codecs; 
using Leadtools.Drawing; 
using Leadtools.ImageProcessing; 
using Leadtools.ImageProcessing.Color; 
 
 
public ImageViewerForm _form = new ImageViewerForm(); 
public ImageViewer _imageViewer; 
 
public void ImageViewerGetItemViewBoundsExample() 
{ 
 
   // Get the Form's ImageViewer control 
   _imageViewer = _form.ImageViewer; 
   // Clear all the items already the viewer 
   _imageViewer.Items.Clear(); 
   // Use vertical view layout 
   _imageViewer.ViewLayout = new ImageViewerVerticalViewLayout(); 
   // Make sure the item size is larger than the image size (thumbnails mode) 
   _imageViewer.ItemSize = LeadSize.Create(200, 200); 
   _imageViewer.ItemPadding = new Padding(8, 8, 8, 20); 
   _imageViewer.ItemBorderThickness = 1; 
   Debug.WriteLine(_imageViewer.Bounds); 
 
   // Add 4 items to the viewer 
   using (var codecs = new RasterCodecs()) 
   { 
      for (var page = 1; page <= 4; page++) 
      { 
         var item = new ImageViewerItem(); 
         var fileName = Path.Combine(LEAD_VARS.ImagesDir, string.Format("ocr{0}.tif", page)); 
 
         // Create a thumbnail from the image 
         using (var image = codecs.Load(fileName, page)) 
         { 
            item.Image = image.CreateThumbnail(180, 180, 24, RasterViewPerspective.TopLeft, RasterSizeFlags.Resample); 
         } 
 
         item.Text = string.Format("Item {0}", page - 1); 
         _imageViewer.Items.Add(item); 
      } 
   } 
 
   // Hook to the viewer mouse click event 
   _imageViewer.MouseClick += _imageViewer_MouseClick; 
} 
 
private void _imageViewer_MouseClick(object sender, MouseEventArgs e) 
{ 
   // Loop through each item, get the view bounds of the image (the physical location and size on the viewer surface of the item) 
   // and perform hit-testing 
   foreach (var item in _imageViewer.Items) 
   { 
      // Pass part as image and clipped as true, we are only interested on what we are seeing 
      var bounds = _imageViewer.GetItemViewBounds(item, ImageViewerItemPart.Image, true); 
      // Hit-test. GetItemViewBounds returns the value in the control coordinates, same as the mouse click 
      if (bounds.Contains(e.X, e.Y)) 
      { 
         Debug.WriteLine("Clicked the image of item at index " + _imageViewer.Items.IndexOf(item)); 
         break; 
      } 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Controls Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.