Physical position and size of the image in the viewer (single item mode).
public LeadRect ImageBounds { get; }
The physical position and size of the image in pixels (single item mode).
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.
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";
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document