CorelDraw插件开发教程(1):⼊门
CorelDraw插件开发教程(1):⼊门
浙江⼯业⼤学⼯业设计研究院
1.FAQ
开始学习之前,有些东西需要先了解⼀下。
1.1 这个教程是教什么的?
这个教程主要⾯向没有编程基础的设计师,是为了提⾼设计师的CAD软件应⽤技能,让设计师能定制实现⼀些复杂的处效果,⽽不是培养职业程序员。
这个教程认真学完后,读者就可以使⽤Visual Basic for Applications,即VBA编程⼯具在平⾯⽮量设计软件CorelDraw 上开发⾃⼰的插件(⼆次开发),来⽣成⼀些特殊的、复杂的、CorelDraw的原有功能不够⽤的图形,如下图所⽰。
上图是利⽤VBA编写的插件界⾯及其⽣成的图形效果。其他案例还有很多,创意之代码上可以到34个。
1.2为什么是CorelDraw和VBA?
对于CAD编程,CorelDraw平台和VBA语⾔都不是唯⼀的,甚⾄也不是最好的选择。平⾯⽮量设计软件很
多,CorelDraw不是⽤户体最⼴的(⽐如AI更普及),也不⼀定是最好⽤的。选择CorelDraw的原因有如下⼏个:
1)CorelDraw⽀持VBA。VBA是微软推出的⼆次开发⼯具,有规范化的开发环境,并且可以制作通⽤⽤户界⾯。VBA 为设计师等⾮职业的开发者节省了很多学习时间,可以让设计师把精⼒集中于创意概念的实现,⽽不是繁琐复杂的程序编写。
2)VBA可以录代码,适合初学者。VBA可以像录⾳机⼀样把⽤户的每⼀步操作(除个别操作外)⾃动记录成代码,⽅便观察学习。这对没有编程基础的初学者快速上⼿是个极⼤的帮助,简化了很多复杂的编程⼯作。
3)VB语⾔应⽤⼴泛。许多2D和3D设计软件⽀持VBA或VB,学会VB的基本语法有助于举⼀反三,迅
速掌握其他CAD 软件的⼆次开发技能。如Illustrator和Rhinoceros⽀持VB,Solidworks⽀持VBA,CATIA同时⽀持VB和VBA,等等。
4)VBA学习资料丰富。VBA应⽤最多的还是Excel。CorelDraw⼆次开发中涉及界⾯制作、函数调⽤等通⽤操作的内容可以参考Excel VBA的资料,两者⼤同⼩异。如此,本书就可以集中精⼒讲述与CorelDraw⼆次开发有关的内容,⽽不
⽤浪费篇幅解释随处可得的基础技术。
总之,对于⼀个初学编程且主要是为了满⾜⾃⼰需求的设计师,所需要的既不是⼀个流⾏的平台、也不是⼀门强⼤的语⾔,⽽是⼀个可以快速上⼿、中途放弃概率最低的渠道和⼯具。CorelDraw VBA就是它了。
1.3难学吗?
不难。
但是要开发出⼀个优秀的插件,需要⼀定的经验和对这项⼯作的熟练程度。总之,跟⼿绘、建模等⼤部分设计师的本职技能⼀样,⼊门很简单,精通看个⼈。
h5 canvas事实上,CorelDraw有很多种开发⼯具,除了VBA还有Python、Java、Pascal、C++等,VBA是⾯向⽤户⽽不是职业开发⼈员的。使⽤VBA的很多都是设计师⽽不是程序员,他们开发的插件很多都是提⾼⾃⼰的设计效率和创意表达⽔平,⽽不是拿到软件市场上去买。也就是说,这是⼀个发烧友⼯具,是最适合设计师使⽤的。
1.4 零编程基础、数学差的⼈能学会吗?
可以。
这个教程就是针对零编程基础和初中数学⽔平的⼈。
很多⼈对编程有误解,认为只有数学好的⼈才适合编程。实际上,编程⼯作最⼤的挑战不是来⾃于数学,⽽是来⾃于逻辑——有条有理地分析、分解、规划、完成⼀项⼯作的逻辑,以及出差错时寻、定位、解决问题的逻辑。
我教过的很多艺术⽣都表⽰,学了编程后,做事的严谨性和条理性⼤⼤提⾼。要相信他们。
2.Hello world
跟所有教写代码的教程⼀样,我们的第⼀课也是写Hello world。这个世界上的⼈可以分为两种:会写
代码的和不会写代码的。Hello world成功运⾏后,你就是第⼆种⼈了,Hello world是给编程世界的第⼀句问候。你可以在Hello world基础上不断扩充,建⽴⾃⼰的魔法世界。
使⽤VBA编写的程序叫“宏”(macro),它可以内嵌在CorelDraw的.cdr⽂档中。下⾯我们就建⽴⼀个宏,让cdr⽂档在打开的瞬间弹出⼀个对话框,显⽰“Hello world!”
⾸先创建⼀个新的cdr⽂档,将其命名为Hello world.cdr。
本教程均以CorelDrawX3为平台讲解,更⾼级的版本(X5~2018版)⼤同⼩异,其中的差异之处会在⽂中逐⼀给出解释。
2.1VBA编程环境简介
VBA的编程环境⼀般叫IDE,即集成开发环境(Integrated Development Environment)。详细的IDE功能介绍请参考Excel VBA教程,有很多,这⾥就不浪费宝贵的版⾯介绍这些随处可见的东西了。
打开Helloworld.cdr,进⼊VBA编程环境。
进⼊VBA编程环境有三种⽅法:
opml格式■快捷键
Alt+F11
■菜单
⼯具/VisualBasic/Visual Basic 编辑器
pycharm黑换白■⼯具栏
CorelDraw有个宏⼯具条,提供了进⼊VBA编程环境的快速⼊⼝。默认状态下,这个宏⼯具条不显⽰。在⼯具栏空⽩处点右键,从下拉菜单中选择Visual Basic for Applications,如下图所⽰:
宏⼯具条是这样的:
点左边第⼆个按钮进⼊IDE,如下图所⽰。
除了菜单和⼯具条外,VBA的IDE主要分为三个区:⼯程资源管理器、属性窗⼝和代码窗⼝。
■⼯程资源管理器
python入门教程 非常详细 pdf左上⽅是⼯程资源管理器,如下图所⽰:
当前所有可⽤的插件程序都列在这⾥,以类似⽂件管理器的树形⽅式组织。当然,你的⼯程资源管理器中不会有这么多东西,最多有个三条吧,因为上图⼤部分东西都是我编写放在⾥⾯的。
哈希表数据结构代码删除
名为VBAProject(Hello world)的项⽬就是我们刚创建的cdr⽂档,如果其中有内嵌代码(现在还没有),会列在这⾥。项⽬标题的括号⾥是当前打开的cdr⽂档名(省略了扩展名cdr)。其他都是gms⽂档,项⽬标题后的括号⾥给出了gms⽂档的⽂件全名。下节会解释gms。
java算什么行业■属性窗⼝
左下⾓是属性窗⼝,如下图所⽰:
属性窗⼝⽤来设置软件界⾯的窗体和按钮、输⼊框、选择框等控件的名称、⼤⼩、位置、⾊彩、贴图、⽂字等属性。
■代码窗⼝
右侧最⼤的区域是代码窗⼝,我们就在这⾥写代码。⽬前还是空⽩。
2.2在cdr⽂档中建⽴内嵌程序
我们要求cdr⽂档在打开时⽴刻就弹出对话框,这个动作通过⼀个事件⼦程序实现。
CorelDraw 的VBA定义了⼀个“Open”事件⼦程序,凡是写在这个⼦程序⾥的指令,都会在cdr⽂档打开的瞬间被执⾏。以下是在Open事件⼦程序中创建“显⽰Hello world对话框”这⼀动作的流程:
1)在VBAProject(Hello world)中到ThisDocument,双击,在右侧显⽰它的代码窗⼝。
2)调出Open事件⼦程序。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。