C#制作CorelDraw插件
2015-11-30 .NET分享下C#CorelDraw插件的开发
一、新建WinFrom程序
在CS代码中添加以下引用 using CorelDRAW; using VGCore;
在代码中添加一个CorelDRAW.Application的字段,所有对文档、物件的操作都在里面。
public CorelDRAW.Application App; 如下图
二、创建与CorelDraw的关联
在窗体界面设计器中添加一个按钮,在给按钮添加一个事件。
下面看按钮代码中的事件 这里添加了一个判断,判断CorelDRAW.Application字段有没有赋值,防止打开多个CorelDraw程序。
上图中代码写的代码写重了,视图模式的代码为: App.ActiveWindow.ActiveView.Type = CorelDRAW.cdrViewType.cdrEnhancedView;
cdrViewType :可以设置CorelDraw视图模式,越简单的模式执行效率越高 cdrViewType.cdrEnhancedView 是增强模式,默认的视图模式 cdrViewType.cdrSimpleWireframeView 是线宽模式,在该模式下执行宏效率较高。
cdrWindowState :CorelDraw窗体的设置,最大化最小化等。
cdrUnit :设置CorelDraw当前文档的单位(mm毫米、cm厘米、m米)
执行程序,点击按钮会自动打开CorelDraw并创建一个文档。
三、操作CorelDraw中的物件 首先绘制控件,并添加按钮事件
注: App.ActiveSelectionRange 表示CorelDraw文档当前选中的物件 Shape、Shapes、ShapeRange
设计CorelDraw插件主要操作的就是这几个对象 Duplicate 表示复制、再制,效率没有 Clone 高,如果是 Clone 母体被删除时,所有的克隆体都会被消灭。
下图为执行效果。
四、遍历操作物件 遍历文档当前在操作的层中所有的物件,如果含有指定文本的话,改变其颜色
下图为执行效果
五、进阶操作 绘制控件
添加按钮事件 Shapes中有一个很有用的方法:FindShapes 该方法可以寻找各种物件,可以通过物件名称、类型、大小、颜色(边框颜色)、文本等进行寻找物件。
下图未进行操作任何操作
下图为寻找物件1 按钮的效果
下图为寻找物件2按钮的效果
最后,可以把创建CorelDraw连接的代码定义成一个方法。
在窗体载入后调用该方法
各种类、属性的用法,CorelDraw中VB宏中都有英文的帮助库。
不想排版不想组织语言,就这样吧。
上面的源码下载:coreldrawapp
上一张自己开发的插件的截图。
博主,你好, 这个插件可以共享学习吗?现在我有个类似的需求,如果可以,麻烦你回复下邮件。谢谢了。 [ ]
好几年前的东西了,程序都不知道丢哪里了。。。如果你要研究的话可以去coreldraw sdk 开发者社群网站里面有很多相关资料,而且网上也有挺多vba的宏,都有源码,也可以参照。cdr里VBA宏里也有相关函数的帮助。 [ ]
你好,像找你做CorelDraw软件,加我qq:273401770 [ ]
cdr这块很久没接触了。。。有需求的话可以找魔镜插件的作者,可以向他定制功能。 [ ]