赞
踩
本文收集自互联网,再稍加修改,方便读者阅读。
这个章节介绍Adobe Illustrator插件结构。介绍了插件如何和illustrator交互,给出了插件功能的概念。
什么是插件:插件是一个库,扩展或改变了illustrator的行为。在Windows中,插件编译为dll。illustrator中插件架构非常强大。插件可以用在illustrator优美的矢量,文字和栅格引擎上,同样也可以用在illustrator的用户界面上。API是整个应用程序的基础。事实上,illustrator自身的大部分也是由插件实现的。
你可以创建插件,添加新的工具到已有的绘图工具,渐变工具或栅格工具中。插件可以将illustrator改变为一个强大的CAD,制图系统,或其他自定义的应用程序。用户可以快捷简易的添加或移除插件来定制满足需要的illustrator。
Illustrator的API给插件开发者提供了很多好处。因为illustrator处理了大部分程序任务,如打印和保存文件,这让你可以专注在实现你自己有特质的插件。插件不需要支持撤销和窗口更新,这些被API处理了,它对于插件开发是隐藏的。这些使得开发周期缩短。
你的插件同样可以利用ADM的优势,它是一个跨平台,用户界面的API。使用ADM悬浮面板的插件已经完全的和illustrator融为一体,面板可以被停靠,悬浮和控制。
Illustrator API第一次出现在版本5.0中。它支持一种插件:filters。在5.5中它得到扩展,包括了文件格式。5.x API体现了许多早期API设计的特色。庞大的接口中,包括了足够的函数来达到想要的目的,但是不允许扩充。提供了单一回调函数表,不能扩展和更新。平台抽象十分少,和用户的交互也局限在模态上。
Illustrator6.0API开始解决这些限制。使用模块化和可扩展的方式导出应用功能。回调函数被组织进suites,它们可以容易的替换和扩展。插件类型被抽象,扩展到包括工具,悬浮窗口,菜单,事件以及这些类型的组合。平台抽象的第一步已经开始。
Illustartor 7.0 API 提炼了之前的成果。API被扩展得真正的跨平台,包括了了一个完整的用户交互suites。管理插件的核心概括为不仅跨平台,而且跨产品。更多的核心功能以插件的方式来实现,使得应用程序不需要修改就可以在行为上发生变化。
Illustrator 8.0 API的最大变化是将整数改为浮点数。所有使用整数参数的suites都更新到使用浮点数。在一些情形中,Adobe改变函数名字来表明这个变化。Illustrator 8.0 API增加了一些新的suites,对应了新的特性如插件组,鼠标咬合和脚本。
…
Illustrator CS1(Illustartor version 11.0)集成了一个新的文本引擎,ATE(the Adobe Text Engine)。Text API被完全的改进。之前的text API被舍弃(AIText, AITextFaceStyle,AITextPath,AITextRun,AITextStream,AITextStyle等)。新的ATE API提供了更多在排版上的功能和控制。这个变化打破了旧版本的兼容性。使用了废弃了的text API需要移植到新的ATE API,并使用Illustartor 11 SDK重新创建。
Illustrator CS2 API(illustrator version 12.0)引入了Unicode支持。Unicode编码必须用在任何用户界面的文字显示上。
Illustrator CS4 API(illustrator version 14.0)引入了对多图形工作台、FXG文件格式和许多其他的东西。多图形工作台特性已经被许多用户提出。FXG文件格式改善了对设计开发工作流的支持,铺设了illustrator和基于XMl应用程序间更亲密交互的道路。这些变化和其他的API变化在Adobe Illustrator CS4 Porting Guide中做了说明。
和许多项目一样,illustrator插件包括代码和数据。Illustrator插件管理器在需要时,加载和运行插件代码,发送多种消息到插件。插件管理器在不再需要插件时,就将其卸载。如下图:
插件被加载或被卸载时,Illustrator会做出通知,这使得插件可以恢复或保存状态信息。
这个部分描述了可以创建的插件类型。一个插件文件可以包含多种插件类型。如,图形创建插件可能实现了很多filters和一个插件tool。插件类型如下表:
Action plug-ins
Action plug-ins用来执行illustrator命令。一个Action插件可以注册自身,所以它可以通过动作面板被记录。更多信息,参看adobe illustrator API参考中的AIActionManagerSuite。
Plug-in file formats
Plug-in file formats用来扩展illustrator可以读和写的文件格式。插件指定那种文件格式它支持在初始化中,指定支持的名字和文件格式。一个插件可以注册的格式不受限制。插件支持的文件格式是否可以在illustrator的输出,保存和打开对话框中显示,取决于新文件格式被添加时指定的选项。更多信息,参看adobe illustrator API参考中的AIFileFormatSuite。
Plug-in filters
Plug-in filters出现在Object菜单的下面,用来创建和操作illustrator图形。典型的,filters提供一个模态的用户接口,可以在运行前设置参数。
注意:在其他应用程序中(包括Adobe PageMaker和Adobe FrameMaker),filter或filter plug-in有时用来描述读和写非本地文件(如TIFF和JPEG)的软件。在illustrator中,这些叫做文件格式插件。Illustrator与Adobe Photoshop在使用filter plug-in这个术语上是相似的:一般使用特定的算法修改图形。Illustrator自动更新重做和撤销菜单,使得filters插件是最容易制作的插件之一。更多信息,参看Adobe Illustrator API参考中的AIFilterSuite.
注意:AIFilterSuite不被AILiveEffectSuite支持。建议实现filters的插件换用live effects,因为AIFilterSuite将在未来的某个时候被移除。
Plug-in menu commands
Plug-in menus被用来添加菜单项到illustrator的菜单中,除了filter menu。此类插件经常用来添加一个隐藏/显示窗口菜单项到illustrator窗口菜单中。Plug-in menu commands可以添加到菜单的许多地方。更多信息,参看Adobe Illustrator API参考中的AIMenuSuite。
Plug-in notifiers and timers
Plug-in notifiers and timers用于插件得到illustrator特定事件的通告。通告插件在illustrator文档改变时被通知。如,一个插件在选择状态改变时需要被通知。一个通告插件在启动期间注册一个或多个通告消息。计时器插件在指定的时间间隔被通知。如,一秒通知一次。更多信息,参看Adobe Illustrator API参考中的AINotifierSuite和AITimerSuite。
Plugin-group plug-ins
Plugin-group plug-ins包含一个或多个插件组。一个插件组是一个特定图形对象,包括可编辑可视或不可编辑可视。一个插件组插件用来重新生成显示图形在编辑图形被改变时。插件组用来制作特定图形类型,如live blends和brushes。更多信息,参看Adobe Illustrator API参考中的AIPluginGroupSuite。
Plug-in tools
Plug-in tools添加一个图标到工具面板,扩展用户工具的数量。许多标准Illustrator工具,包括刀刻工具,形状工具和旋转工具,都是以plug-in tools的方式被实现。当选择时,一个工具插件可以记录鼠标,决定哪个图形被选中,并在上面执行操作。如,工具可以用来创建或销毁对象。一些事物被plug-in tools自动处理了,如滚动窗口。更多信息,参看Adobe Illustrator API参考中的AIToolsSuite。
Combining multiple plug-in types(结合多种插件类型)
正如前面所说的,一个插件可以实现多种插件类型。一个插件同样可能需要添加单个插件类型的多个实例。插件API这两种方式都支持。
Where plug-ins live(插件存在哪里)
Illustrator插件文件在下列地方:
Windows: c:\Program Files\Adobe\Adobe Illustrator CS4\Plug-ins</font>
用户指定插件文件夹,可能适合多用户系统,如下:
Windows XP: c:\Document and Settings<username>\Application Data\Adobe\Adobe Illustrator CS4 Settings\Plug-ins</font>
Windows Vista: c:\Users<username>\AppData\Roaming\Adobe\Adobe Illustrator CS4 Settings\Plug-ins</font>
请留言。
提示: 作者知了-联系方式1
提示: 作者知了-联系方式2
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。