引导工具imageviewer - 在c#.net中的ruber绑定概念 [英] Lead tools imageviewer - ruber banding concept in c#.net
问题描述
我的要求是在图像上找到所选文字。当我使用鼠标在图像上绘制矩形时,然后我的事件viewer_InteractiveRegionRectangle没有触发或不工作。
将数据也输入InteractiveRegionRectangle。
我尝试过:
ViewerUserControl.cs
公共部分类ViewerUserControl :UserControl
{
公共事件EventHandler< rasterviewerrectangleeventargs> InteractiveRegionRectangle = null;
public ImageViewer _imageViewer;
}
WBaseRealEstate.cs:
protected ViewerUserControl imageViewerControl1;
protected virtual void WBaseRealEstate_Load(object sender,EventArgs e )
{
ImageViewerRubberBandInteractiveMode rubberBandMode = new
ImageViewerRubberBandInteractiveMode();
this.imageViewerControl1._imageViewer.InteractiveModes.Add(rubb erBandMode);
this.imageViewerControl1.InteractiveRegionRectangle + = new EventHandler< leadtools.winforms.rasterviewerrectangleeventargs>(viewer_InteractiveRegionRectangle);
}
protected virtual void viewer_InteractiveRegionRectangle(object sender,Leadtools.WinForms.RasterViewerRectangleEventArgs e)
{
RubberbandDelegate del = new RubberbandDelegate(this.RubberBand);
this.BeginInvoke(del,new object [] {e});
}
My Requirement is finding the selected text on image . While i am drawing rectangle on top of the image using the mouse ,Then my event "viewer_InteractiveRegionRectangle" is not firing or not working.
Getting data also into InteractiveRegionRectangle.
What I have tried:
ViewerUserControl.cs
public partial class ViewerUserControl : UserControl
{
public event EventHandler<rasterviewerrectangleeventargs>InteractiveRegionRectangle = null;
public ImageViewer _imageViewer;
}
WBaseRealEstate.cs:
protected ViewerUserControl imageViewerControl1;
protected virtual void WBaseRealEstate_Load(object sender, EventArgs e)
{
ImageViewerRubberBandInteractiveMode rubberBandMode = new
ImageViewerRubberBandInteractiveMode();
this.imageViewerControl1._imageViewer.InteractiveModes.Add(rubberBandMode);
this.imageViewerControl1.InteractiveRegionRectangle += new EventHandler<leadtools.winforms.rasterviewerrectangleeventargs>(viewer_InteractiveRegionRectangle);
}
protected virtual void viewer_InteractiveRegionRectangle(object sender, Leadtools.WinForms.RasterViewerRectangleEventArgs e)
{
RubberbandDelegate del = new RubberbandDelegate(this.RubberBand);
this.BeginInvoke(del, new object[] { e });
}
推荐答案
我们的ImageViewer控件的Rubberband交互模式在工具包附带的几个演示中实现,包括OcrModulesDemo项目。
您需要处理的事件是ImageViewerRubberBandInteractiveMode.RubberBandCompleted。
初始化模式的代码是:
The Rubberband interactive mode of our ImageViewer control is implemented in several demos that ship with the toolkit, including the OcrModulesDemo project.
The event you need to handle is ImageViewerRubberBandInteractiveMode.RubberBandCompleted.
The code to initialize the mode is this:
_viewer.InteractiveModes.BeginUpdate();
_rubberBandMode = new ImageViewerRubberBandInteractiveMode();
_rubberBandMode.IdleCursor = Cursors.Cross;
_rubberBandMode.WorkingCursor = Cursors.Cross;
_rubberBandMode.RubberBandCompleted += new EventHandler(_rubberBandMode_RubberBandCompleted);
_viewer.InteractiveModes.Add(_rubberBandMode);
_viewer.InteractiveModes.EndUpdate();
事件处理程序如下所示:
The event handler looks like this:
private void _rubberBandMode_RubberBandCompleted(object sender, ImageViewerRubberBandEventArgs e)
{
_frameRect = _viewer.ConvertRect(null,
ImageViewerCoordinateType.Control,
ImageViewerCoordinateType.Image,
LeadRect.FromLTRB(e.Points[0].X, e.Points[0].Y, e.Points[1].X, e.Points[1].Y));
// ...use the rectangle
}
请检查演示如何实现此事件以获取所选区域。如果您仍然遇到问题,请通过电子邮件或聊天联系我们的支持(两者都是免费的),并提供有关问题的完整详细信息,您的LEADTOOLS版本以及您目前所尝试的内容。
联系方式详情见此页。
这篇关于引导工具imageviewer - 在c#.net中的ruber绑定概念的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!