BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Adobe Creative Suite可扩展性概述

| 作者 Lea Savage 关注 0 他的粉丝 发布于 2011年6月2日. 估计阅读时间: 7 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

目录

需求

用户水平

所有

本文概述Adobe Creative Suite可扩展性技术,该技术为适用于一系列支持的Adobe Creative Suite应用程序的扩展的开发和部署提供了一个通用的基础架构。您可以为CS5和更高版本开发扩展。

Adobe Creative Suite扩展

Adobe Creative Suite扩展是一组文件,它们集中在一起以扩展一个或多个Adobe Creative Suite应用程序的功能。开发人员可使用扩展添加服务和跨套件中的应用程序集成新的功能。CS Extension Builder为开发人员提供了一个一致的平台,用于开发和部署贯穿整个套件的扩展。CS扩展的运行方式与所有Adobe Creative Suite产品非常相似,为您提供了丰富且统一的体验。

CS扩展使用ActionScript创建跨平台用户界面。扩展还可以访问托管应用程序的脚本界面,可使用这些脚本API与该应用程序交互。

与套件产品的紧密集成使您能够控制扩展,就像它们构建在托管应用程序中一样。例如,可以从应用程序的菜单调用扩展,并且依据扩展的类ingnin可以停靠、分离以及为它们提供弹出菜单。您可以迅速轻松地添加或删除扩展,根据您的需要自定义Adobe Creative Suite应用程序。

图1. InDesign CS5.5中一个停靠的CS扩展

Kuler面板由Adobe开发并可用于一些CS产品中,是一个CS扩展的示例。在过去,它仅可用作一个Web托管的应用程序来生成颜色主题,但现在Kuler扩展还支持从套件产品内访问在线Kuler服务,允许您访问Web托管的版本中可用的颜色主题。

图2. Kuler CS扩展中的弹出菜单

Kuler也与托管应用程序集成,允许您创建主题并将它们添加到Photoshop中作为色板。

图3. Photoshop CS5中的Kuler CS扩展

Adobe Creative Suite可扩展性体系结构

Adobe Creative Suite可扩展性体系结构设计用于简化扩展的开发和部署。本节介绍它的组成部分并解释它们如何协同工作来运行扩展。

  • Adobe Creative Suite应用程序,支持通过本机库将扩展(比如Photoshop和Illustrator)链接到可扩展性体系结构。此库执行列出服务、调用服务和与其通信,以及请求在托管应用程序中执行的已定义操作所涉及的标准任务。
  • CS应用程序在开发时就考虑到了可通过CS Service Manager供它使用的扩展(服务或扩展的功能)。可扩展性基础架构中的这个关键组件在客户端机器上与各种产品一起运行,提供一种通用方式来管理整个套件的扩展。
  • Service Manager与Adobe Extension Manager通信,向现有扩展提供新内容或更新。安装或更新后,扩展文件保存在文件系统中一个通用位置。CS应用程序可从这个通用位置加载扩展。

此图显示了各种组件和它们的关系:

(图字:CS Service Manager CS应用程序,扩展 Flash/AIR运行时,Extension Manager ZXP(已签名),托管脚本 DOM)

图4. Creative Suite可扩展性体系结构

扩展剖析

部署的Adobe Creative Suite扩展包含以下组件。

文件或文件夹

描述

MyExtension.swf

提供扩展接口的Flash文件。该SWF文件是一个已编译的AIR或Flex应用程序。它可嵌入SDK ActionScript库,允许扩展与托管应用程序和可扩展性基础架构通信。

CSXS/manifest.xml

描述文件,一个列出托管应用程序的配置文件,可加载扩展和支持的语言环境,以便使用正确的资源。开发环境提供了编辑配置的UI。

icon_*.jpg

可选的图标,用于表示停靠时的扩展。您可以提供3个不同的图标:一个表示正常状态、一个表示翻转状态、一个表示禁用状态。在配置中指定这些图标。

locale/*.*

可选的文件夹,包含本地化的字符串资源。默认的本地化文件messages.properties存储将UI字符串映射到资源的键-值对。每个特定的语言环境文件夹包含针对该语言环境的messages.properties文件。

扩展管理

只要Adobe Creative Suite产品调用扩展,CS Service Manager程序就会在后台运行。此服务基于每个扩展的描述文件中提供的信息,确定应该将哪些扩展加载到应用程序中。要指定或更改此信息,可以编辑项目属性。每次安装、卸载或更新扩展时,CS5 Service Manager重新加载扩展的描述文件来反映这些更改。下一次重新启动CS5应用程序时,CS5 Service Manager会向该应用程序通知所做的更改。

您可以通过Extension Manager安装封装并签名的Adobe Creative Suite扩展。Extension Manager将所有扩展安装在一个通用位置,extensions/文件夹位于CS5ServiceManager或CS5.5ServiceManager下,所有Adobe Creative Suite应用程序都可以访问该位置。准确的位置取决于平台和Creative Suite版本:

  • 在Windows中:C:\Program Files\Common Files\Adobe\CS5[.5]ServiceManager\extensions\
  • 在Mac OS X中:/Library/Application Support/Adobe/CS5[.5]ServiceManager/extensions/

extensions/文件夹中,扩展按所分配的名称(也就是程序包标识符,不是在托管应用程序的Extensions菜单中显示的显示名称)进行组织。您可以通过Extension Manager的UI删除扩展。

延伸阅读

本文概述了Creative Suite可扩展性技术,详细介绍了CS扩展的核心组件。关于开发CS组件或使用CS Extension Builder 1.5进行开发的更多信息,请访问Creative Suite开发中心

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT