
6步搞定CEP扩展Getting-Started-guides手把手教你搭建第一个Photoshop面板【免费下载链接】Getting-Started-guidesGetting Started guides and samples for CEP extensions项目地址: https://gitcode.com/gh_mirrors/get/Getting-Started-guidesGetting-Started-guides 是 Adobe 官方提供的CEP 扩展开发指南与示例库CEP Common Extensibility Platform通用扩展平台。本文将带你用6 个步骤从零搭建一个能在 Photoshop 中打开本地文件的 CEP 面板扩展——全程只需 HTML JavaScript 少量 ExtendScript新手也能快速上手。完成后的效果如下在 Photoshop 中打开我们写的面板点击按钮即可调用宿主应用能力打开本地文件 为什么选择 CEP 开发 Photoshop 扩展用熟悉的 Web 技术写界面面板 UI 就是标准的 HTML / CSS / JavaScriptExtendScript 驱动宿主能力打开文档、导出文件、自动化操作几乎 Photoshop 能做的事都能调用一套代码多应用复用同一套 CEP 结构可扩展支持 Illustrator、InDesign、After Effects 等 Creative Cloud 全家桶 前置要求具备基础的 HTML、CSS、JavaScript 知识即可。第1步规划CEP扩展的文件夹结构扩展必须保存到一个约定的extensions目录中用户级或根级取决于使用范围。除强制要求的CSXS文件夹外其余结构可以灵活安排。官方推荐的目录组织方式如下文件夹作用CSXS存放manifest.xml配置文件扩展能否被宿主识别全靠它client前端代码HTML / CSS / JS以及必需的CSInterface.js库hostExtendScript 脚本如index.jsx用于调用宿主应用能力这样前端与宿主脚本各司其职职责清晰、易于维护。第2步配置 manifest.xml 扩展清单manifest.xml是整个扩展的身份证。对新手来说只需关注以下 7 个核心配置项ExtensionBundleId唯一包 ID如com.my.testExtension Id包 ID .panel在清单中会出现两次Host Name Version支持的宿主应用及版本本例为 PhotoshopPHSP/PHXS19MainPath指向./client/index.htmlScriptPath指向./host/index.jsxMenu面板在宿主菜单中显示的名称Size面板默认宽高如 350 × 500配置完成后就得到一个支持 Photoshop v19、默认尺寸 350×500、名为 My First Panel 的面板扩展。项目中提供了可直接参考的完整清单文件最小配置示例Exporting files from the host app/com.cep.export/CSXS/manifest.xmlFetch 天气面板示例Network requests and responses with Fetch/com.cep.weather-simple/CSXS/manifest.xml第3步引入 CSInterface.js 核心库CSInterface.js是 CEP 官方的核心库负责控制面板本身打开、关闭、调整大小等建立前端 JavaScript 与宿主 ExtendScript 之间的通信桥梁只需把最新版本的CSInterface.js放到/client目录下并在index.html中作为script依赖引入即可。第4步编写前端面板界面HTML JS面板界面完全用 HTML 编写。最小可用的index.html包含三部分一个标题、一个按钮、两个脚本依赖CSInterface.js 自己的index.js。JavaScript 侧的核心只有三步创建CSInterface实例给按钮绑定点击事件用evalScript()向前端发起指令调用宿主端的 ExtendScript 函数var csInterface new CSInterface(); document.querySelector(#open-button).addEventListener(click, openDoc); function openDoc() { csInterface.evalScript(openDocument()); }其中evalScript()是连接面板与宿主应用的关键通道——后续第 5 步的宿主函数就会由它触发。第5步编写 ExtendScript 宿主脚本ExtendScript 与普通 JS 的本质区别在于它能直接访问宿主应用能力打开文档、编辑、导出等。本例只需写一个打开文件的函数function openDocument(){ var fileRef new File(~/Downloads/myFile.jpg); var docRef app.open(fileRef); }当你在前端点击按钮时evalScript(openDocument())就会调用这个函数Photoshop 随即打开指定文件。第6步在Photoshop中启动扩展保存代码后重启宿主应用Photoshop然后在菜单中找到窗口Window 扩展Extensions My First Panel面板弹出后点击按钮就能看到第 4、5 步的完整链路生效。如果启动时弹出未签名扩展提示说明需要开启调试模式——这正是下一节的主题。调试技巧面板改动后如何生效开发过程中最容易困惑的问题是我改了代码为什么界面上没变化答案取决于你改的是哪一侧改了client前端代码→ 关闭并重新打开面板即可改了CSXS/manifest.xml或host脚本→ 需要重启整个宿主应用进阶调试可以借助 Chrome 的 CEF 远程调试功能把面板当网页一样在localhost:8088中查看 Console 日志完整的调试设置方法包括 Windows 注册表 / Mac 终端开启PlayerDebugMode请参考项目内的 Client-side Debugging/readme.md。进阶路线你的扩展还能做什么搭好第一个面板只是开始项目内还提供了多篇进阶指南和完整示例从宿主应用导出文件用 ExtendScript 把当前文档导出为 PDF / JPG / PNG示例代码见 Exporting files from the host app/com.cep.export/host/index.jsx发起网络请求在面板中调用第三方 API 并实时更新 UI示例见 Network requests and responses with Fetch/com.cep.weather-simple/host/index.jsx打包与分发学会用 ExManCmd 把扩展打成安装包进行分发指南见 Package Distribute Install/readme.md提审与变现面向 Creative Cloud 开发者计划的上架流程见 Submit Review Monetize/Readme.md常见问题速答CEP新手FAQQ扩展保存到哪里才能被 Photoshop 识别A系统的extensions扩展目录分用户级/根级目录内必须包含CSXS/manifest.xml。Q为什么面板菜单里看不到我的扩展A90% 的情况是manifest.xml的Extension Id前后不一致或MainPath/ScriptPath路径写错。Q提示扩展未正确签名怎么办A开启PlayerDebugMode调试模式即可步骤见第 6 步提到的调试指南。Q同一套代码能支持多个 Adobe 应用吗A可以。在manifest.xml的HostList中追加应用如ILST代表 Illustrator、IDSN代表 InDesign并按app.name区分宿主逻辑。总结6步回顾步骤关键产出1️⃣ 规划结构CSXS/client/host三大目录2️⃣ 配置清单可用的manifest.xml3️⃣ 引入核心库CSInterface.js就位4️⃣ 写前端面板 HTML JSevalScript5️⃣ 写宿主脚本ExtendScript 函数6️⃣ 启动验证菜单中打开你的第一个面板 跟着 Getting-Started-guides 走完全流程你就拥有了一个真正可用的 Photoshop CEP 扩展并掌握了向导出、网络请求、打包分发等进阶主题继续探索的路线图。【免费下载链接】Getting-Started-guidesGetting Started guides and samples for CEP extensions项目地址: https://gitcode.com/gh_mirrors/get/Getting-Started-guides创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考