adobe脚本的框架_Adobe 系列软件插件脚本开发
一直不知道Adobe系列软件是有大量接口,而且对第三方插件开发是非常友好的,直到前段时间,帮助做InDesign的排版,发现大量重复的动作,于是想利用程序帮生成修改idml,然后偶然才发现InDesign原本支持脚本,更是对插件开发非常之友好,大量完整的文档,demo可以参考,官方甚至还有专门的开发工具,插件商店,可惜,插件非常少,官网插件商店也很少,大部分都是前几年开发的,能不能用都两说。非常奇怪,也许懂设计的大部分对程序开发天然排斥,二搞代码的也没有使用这些设计软件的需求。
于是乎,放弃之前的思路(从导出文件入手),开始搞脚本,插件,但是国内这方面的资料,技术凤毛麟角,google中反复搜索,数的见的几篇文章,大部分还是国外资料,现在此整理列出,方便后来者使用。
Adobe 的脚本语言分3种,VBScript,JavaScript以及AppleScript,VBScript 是运行于win系统,Apple运行于MAC,JavaScript两边通用,所以,大部分都会使用JavaScript去开发。
一. 国内写的比较容易理解全面的一个入门介绍文章是:
二. 收集的一些文档
三. 演示脚本
四. 官方的插件商店(可以下载免费插件参考)
五. ExtendScript Toolkit(方便调试脚本)
如果有前端基础,基本简单熟悉ExtendScript 之后,就可以进行adobe插件的开发。
主要的难点是adobe的接口太多,需要了解各种adobe的命名,比如获取当前选择的图层,需要这样使用 :var myDoc = app.activeDocument.selection ;
获取当前页面需要这样:var myPage = app.activeWindow.activePage;
InDesign 有左右页面之分,所以,如果获取元素的定位还需要判断左右://获取页面范围
function myGetBounds(myDocument, myPage){
//页面宽度
var myPageWidth = myDocument.documentPreferences.pageWidth;
//页面高度
var myPageHeight = myDocument.documentPreferences.pageHeight
if(myPage.side == PageSideOptions.leftHand){
var myX2 = myPage.marginPreferences.left;
var myX1 = myPage.marginPreferences.right;
}
else{
var myX1 = myPage.marginPreferences.left;
var myX2 = myPage.marginPreferences.right;
}
//页面上边界点
var myY1 = myPage.marginPreferences.top;
//页面右起点
var myX2 = myPageWidth - myX2;
//页面下边界点
var myY2 = myPageHeight - myPage.marginPreferences.bottom;
return [myY1, myX1, myY2, myX2];
}
还有比较不理解的是PhotoShop 有很多特殊接口可以使用,而其他,InDesign 还算好些,AI 则很多接口是无效的,就是说,大部分代码是通用的,但是PS功能更多,可以控制的东西更全面,而同样的功能AI可能完全无法实现。可能因为大部分人都是使用PS多,而AI,ID使用少,所以干脆接口都懒得加了,而且github上面的AI,ID脚本用上古形容毫不过分,看时间都是10年前后。好在大部分都还兼容。
总体来说,熟悉之后,可以做很多事情,包括自动导入,导出,AI,PS,ID之间相互唤醒自动执行一些东西,基本来说,一些简单重复的操作都有办法写出插件。
比如这段时间开发这个插件:
可以导入文本内容,包含文字的格式,然后在排版时候,方便的点击即可以直接导入对应文本,可以自动更新链接,方便AI那边修改之后自动同步,还可以将ID每次修改完的页面生成jpg图片,自动导入AI对应的文件,作为半透明的背景图片,方便AI调整时候看到效果,还可以自动翻译选中的文本,方便核对。
基本可以节约30%的时间,对于一个喜欢创造的设计师来说,可能最讨厌的就是重复性的工作。
adobe脚本的框架_Adobe 系列软件插件脚本开发相关推荐
- eFPGA设计开源框架 FABulous 系列(一)开发环境搭建
我是 雪天鱼,一名FPGA爱好者,研究方向是FPGA架构探索. 关注公众号[集成电路设计教程],拉你进"IC设计交流群". 目前在研究eFPGA,学术界目前最新发表的用于 eFPG ...
- RedHat系列软件管理(第二版) --脚本安装
RedHat系列软件管理 --脚本安装 一.解压缩 tar -zxvf webmin-1.700.tar.gz 二.进入相关目录 cd webmin-1.700 三.如果此时执行./configure ...
- 软件加入使用时间_Adobe CC 2020 系列软件更新(Adobe Zii 2020 5.2.1)| Mac软件天堂
小伙伴们,感谢关注「Mac软件天堂」,遇到"XX已损坏"."XX意外退出"."无法确认开发者"等问题记得点击菜单栏的「帮助」解决哦 !同时, ...
- Adobe系列软件大全
原文:https://baijiahao.baidu.com/s?id=1621170007489186817&wfr=spider&for=pc Adobe官网:https://ww ...
- 扩展插件_Adobe扩展工具插件系列
Adobe系列软件相信大家都已了解到其功能的强大,除了软件之外Adobe系列的插件的功能也是不可忽略的. 今天给大家分享的几款Adobe系列超强PS扩展工具,都是一些摄影师.设计师经常用的到的,可以提 ...
- 使用Creative Cloud Cleaner Tool mac彻底卸载删除Adobe系列软件
Adobe系列软件大概是很多Mac用户的必备软件,如果不需要了想要卸载怎么办?如何轻松彻底的卸载Adobe系列软件呢?macw小编为大家带来使用Creative Cloud Cleaner Tool ...
- mac设计师系列 Adobe “全家桶” 15款设计软件 值得收藏!
文章素材来源:风云社区.简书 文章收录于:风云社区 www.scoee.com,提供1700多款mac软件下载 Adobe Creative Cloud 全线产品均可开放下载(简称Adobe CC 全 ...
- 安装ps显示无法连接到adobe服务器,Adobe系列软件Photoshop安装时提示“安装完成,下列产品的某些项目无法成功安装”错误的原因及解决方法...
在Windows系统中安装Adobe系列软件(比如Photoshop.Premiere.Illustrator)的时候,很多系统中会遇到这种情况,安装进度条正常走完了,但最后出现下列提示: 安装完成, ...
- 解决Adobe cs6系列软件在Windows10操作系统中无法正常运行问题
解决Adobe cs6系列软件在Windows10操作系统中无法正常运行问题 参考文章: (1)解决Adobe cs6系列软件在Windows10操作系统中无法正常运行问题 (2)https://ww ...
最新文章
- 使用Hugo搭建自己的个人博客网站
- xshell MySQL表备份_shell mysql数据迁移/备份
- C语言system函数(C语言程序中执行命令行)
- IREP_SOA Integration程序注释语法Annotations(概念)
- 百度大数据可视化产品矩阵
- mysql小王 保密_利用mysql的注射点得到更多mysql的信息
- java 钩子线程_java-钩子线程
- Android WiFi开发
- PingCAP 完成 C 轮 5000 万美元融资,创新型分布式关系型数据库领域最大笔融资
- SQL Server内部的内存管理
- 搜狗关键词挖掘工具,搜狗权重关键词挖掘工具
- Redis Web版客户端工具——TreeNMS
- 后台coder的神器!Bootstrap Layoutit
- Mac下Chrome 浏览器右键菜单需双击的问题
- 快速入门Sass:Sass中的体系结构
- lol服务器维护8月7,LOL8月7日更新维护到几点 英雄联盟8.7更新了哪些内容
- docker制作镜像的方法
- 【AI Studio平台基本操作】课程回看
- Quartz2D学习记录
- vscode怎么对选定的代码格式化?ctrl+k,ctrl+f(格式化代码)
热门文章
- 科大讯飞纯离线语音合成的快速集成
- Strans 内表-xml文件
- DirectX11进阶6_静态天空盒、反射动态场景与天空盒、Render-To-Texture(Fade/MiniMap/ScreenShot)
- 阿里云服务器产品规格、产品优势、产品功能及应用场景介绍
- 百度地图——导航(地理编码输入地址获取经纬度)
- 支付宝被黑客攻击了...
- 【Java】Java编写Telnet客户端,连接到Windows的Telnet服务器,执行命令和批处理脚本
- Oracle数据库安装出现OUI-10150错误解决办法
- 用Raspberry Pi运行你自己的无线电台
- 微慕小程序开源版A标签优化说明