新手如何学习 CorelDRAW VBA 插件开发

释放双眼,带上耳机,听听看~!
我从接触CDR软件中的二次开发技术,至今(2021年)已有十个年头了。学习并使用CDR软件的二次开发技术(也就是人们常说的CDR插件),确实能够很大程度上减轻手动重复排版的工作。市面上现有的插件,不一定就完全满足某个广告、印刷企业的自身需要,因为公司企业内部可能有自己的一套流程。通过CDR插件技术,把这套流程标准化,就可以为企业降低时间成本、人工成本。

我是CDR插件技术网站长(Zebe),从接触CDR软件中的二次开发技术,至今(2021年)已有十个年头了。学习并使用CDR软件的二次开发技术(也就是人们常说的CDR插件),确实能够很大程度上减轻手动重复排版的工作。市面上现有的插件,不一定就完全满足某个广告印刷企业的自身需要,因为公司企业内部可能有自己的一套流程。通过CDR插件技术,把这套流程标准化,就可以为企业降低时间成本、人工成本。

结合自己的实战经验,对于新手如何学习CDR插件开发(本文指的是基于VBA语言,对于新手入门较为容易),我总结了以下几点:

1、CorelDRAW 软件本身的基础知识概念

例如:文档、页面、图层、曲线、美术字等等这些概念,至少应该具有1年左右的实际使用经验(指的是真实业务场景的排版、设计工作)。如果这些基础知识都不熟悉,自然无法谈及使用VBA来开发自动化的一些功能。因为开发插件的过程中,在代码里面就会使用这些术语对应的代码(对象)来进行操作,VBA本身就是用代码来操作这些对象(比如说,文档对应的VBA对象是 Document、页面对应的对象是 Page、图层对应的对象是 Layer、矩形对应的对象是 Rectangle),实现自动排版等功能。

2、VB语言的基础知识

这里说VB,而不是VBA,因为VBA语言本身就是VB语言的一个子集,VBA被设计用来嵌入到支持它的各种软件(例如:WORD、EXCEL、CorelDRAW等)中,实现自定义功能。因此,熟悉VB语言,对于编写VBA代码非常重要,因为大多数语法都是相通的,只是在VBA里面,少了VB的一些高级特性。对于VBA新手而言,建议一定要系统全面地去了解一下VB语言(通指VB6.0),从最基础的编程基础知识和术语看起,包括:窗体、模块、类模块、自定义类型、常量、变量、过程、函数、布尔表达式、数学表达式以及表达式计算的优先级,等等。

另外,还需要了解“事件驱动编程”的概念,什么是事件一定要搞懂。因为在VBA中,使用最多的就是窗体、模块、类模块,VBA程序编码,其实就是在处理对象发生事件后,与之相关的处理逻辑。如果不清楚这些基础知识,容易在写代码的时候一头雾水。我见过的有的VBA开发者,只知道照搬别人的代码,到自己机器上跑起来就是各种问题,比如最简单的变量作用域问题(分不清全局变量、局部变量的区别)。基础知识不牢靠,怎么能够愉快的Coding呢?

3、掌握主动查询文档的能力

我将其称为能力,是为了强调它的重要性。有的时候,一个类、一个方法你不知道它有什么属性,具备什么样的功能,如果搜索引擎无法告知你答案,那么你就要善用文档。官方文档永远是最好用的文档,CorelDRAW提供的那个CHM格式的帮助文档,专门讲VBA宏编程的。虽然是英文的,但是你可以通过搜索功能,结合在线翻译,理论上能解决大多数问题,不需要去请教别人,时间久了,你就能自己解决很多从未遇到过的问题,渐渐的也就提升了自己的编程能力,或者说叫做解决问题的能力。

4、学会在CorelDRAW开发者论坛去搜索你想找的东西

CorelDRAW开发者论坛,在国外有很多开发者在里面提问,有非常多的值得参考的资料。比如说,如果你想在VBA里面打开文件选择对话框,你会怎么做?你可以在论坛顶部的搜索框中,搜索 FileBox、FileDialog 之类的关键词,系统会根据关键词给你检索出相关的一些提问和回答,通常情况下都是比较有用的。而且,在这个论坛里,有很多比较厉害的开发者。

论坛地址为:https://community.coreldraw.com/sdk/f

给TA打赏
共{{data.count}}人
人已打赏
CDR插件技术设计软件

如何使用C++开发CDR的CPG插件?

2021-7-9 23:31:34

CDR插件技术软件技术

火山CPG框架 - CDR插件开发的好工具

2021-7-14 13:44:29

⚠️
创印技术所有资源均是用户投稿及网上搜集,仅供网友学习交流,版权归原作者所有,请勿作他用。
若您的权利被侵害,请联系站长 QQ:1502109991 或者 留言反馈 ,我们将尽快处理。
Notice: When you of the legal rights be violate, please stir to Mail: 1502109969@qq.com
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索