找回密码
 立即注册

QQ登录

只需一步,快速开始

pl6666

注册会员

6

主题

17

帖子

61

积分

注册会员

积分
61
pl6666
注册会员   /  发表于:2017-8-1 14:42  /   查看:5163  /  回复:8



填充的部分代码
currRectangle = txtUserViewCtrl.RasterImageEditView.SourceRectangle;
txtUserViewCtrl.RasterImageEditView.BeginUpdate();
var t = new Transformer(txtUserViewCtrl.RasterImageEditView.Transform);

currRectangle = Rectangle.Round(t.RectangleToLogical(currRectangle));
currRectangle=ConvertRect(txtUserViewCtrl.RasterImageEditView.Image.RectangleToImage(RasterViewPerspective.TopLeft, ConvertRect(currRectangle)));
RectangleF imageRectangle = new RectangleF(PointF.Empty, new SizeF(txtUserViewCtrl.RasterImageEditView.ImageSize.Width, txtUserViewCtrl.RasterImageEditView.ImageSize.Height));
using (var container = new RasterImageGdiPlusGraphicsContainer(txtUserViewCtrl.RasterImageEditView.Image))
        {
        using (var path = new GraphicsPath())
         {
          path.AddRectangle(currRectangle);
           using (Brush brush = new SolidBrush(Color.White))
            {
              container.Graphics.FillPath(brush, path);
             }
            path.Dispose();
            }
            container.Dispose();
           }
        txtUserViewCtrl.RasterImageEditView.EndUpdate();



public static Rectangle ConvertRect(LeadRect rc)
        {
            return Rectangle.FromLTRB(rc.Left, rc.Top, rc.Right, rc.Bottom);
        }


下面图是框选 填充的结果,就是填充不完整



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

8 个回复

倒序浏览
pl6666
注册会员   /  发表于:2017-8-1 14:44:44
沙发
希望得到你们的帮助.这个问题已经困扰我很久了。我用的是leadtools 18的版本
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-8-1 16:57:15
板凳
目前我这边只有19版本的可以做测试验证
使用FillCommand 即可进行填充,你可以进行参考,也可以下载v19开发包进行验证,18的版本我这边不能确定

FillCommand cmd = command as FillCommand;
cmd.Color=RasterColorConverter.FromColor(Color.White);
回复 使用道具 举报
pl6666
注册会员   /  发表于:2017-8-1 17:27:37
地板
Richard.Ma 发表于 2017-8-1 16:57
目前我这边只有19版本的可以做测试验证
使用FillCommand 即可进行填充,你可以进行参考,也可以下载v19开 ...

谢谢,可能我们使用的方式不对。我用的是这种方式绘制的矩形区域
//txtUserViewCtrl.RasterImageEditView.InteractiveMode = RasterViewerInteractiveMode.Region;
//txtUserViewCtrl.RasterImageEditView.InteractiveRegionCombineMode = RasterRegionCombineMode.Set;
//txtUserViewCtrl.RasterImageEditView.InteractiveRegionType = RasterViewerInteractiveRegionType.Rectangle;
现在就是这种方式获取的矩形坐标的代码有问题就是我发布问题里面的代码
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-8-1 18:21:43
5#
嗯,我建议你可以下载一个19版本的开发包。参考里面图像处理的demo和源码,有你这个功能
C:\LEADTOOLS 19\Shortcuts\Image Processing\.NET Class Libraries\Image Processing
回复 使用道具 举报
pl6666
注册会员   /  发表于:2017-8-1 19:58:07
6#
Richard.Ma 发表于 2017-8-1 18:21
嗯,我建议你可以下载一个19版本的开发包。参考里面图像处理的demo和源码,有你这个功能
C:\LEADTOOLS 19\ ...

好的 谢谢
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-8-2 12:33:38
7#
不客气
回复 使用道具 举报
pl6666
注册会员   /  发表于:2017-8-2 23:09:22
8#
Richard.Ma 发表于 2017-8-1 18:21
嗯,我建议你可以下载一个19版本的开发包。参考里面图像处理的demo和源码,有你这个功能
C:\LEADTOOLS 19\ ...

你好,再请教一个问题就是鼠标移动时绘制的矩形可以修改绘制矩形的边框样式么,比如说现在是实线先改成虚线
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-8-3 10:34:51
9#
本帖最后由 Richard.Ma 于 2017-8-3 10:47 编辑
pl6666 发表于 2017-8-2 23:09
你好,再请教一个问题就是鼠标移动时绘制的矩形可以修改绘制矩形的边框样式么,比如说现在是实线先改成虚线

新的主题的话,还是新建一个帖子来询问吧。我新建了一个主题来回复你http://gcdn.gcpowertools.com.cn/ ... &extra=page%3D1
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部