←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 void GetItemViewBounds_Example() 
{ 
 
   // Clear all the images 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.ImageBorderThickness = 1; 
 
   // 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 += (sender, 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)); 
            return; 
         } 
      } 
   }; 
 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; 
} 
Requirements

Target Platforms

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

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