前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PhotoShop脚本指南

PhotoShop脚本指南

作者头像
牛老师讲GIS
发布于 2018-10-23 08:03:32
发布于 2018-10-23 08:03:32
3.1K00
代码可运行
举报
运行总次数:0
代码可运行

Photoshop脚本语言

Photoshop支持三种脚本语言:AppleScript,VBScript,JavaScript。其中AppleScript为苹果系统,VBScript为Windows操作系统,JavaScript兼容苹果和Windows操作系统。

         Photoshop可识别JavaScript脚本,其脚本文件后缀必须为*.jsx或者*.js文件。你可以通过文件(File)>脚本(Scripts) >浏览(Browse)打开并执行JavaScript脚本文件。

Photoshop对象模型

         DOM(DocumentObject Model)即为一个API(Application Programming Interface),你可以通过DOM应用脚本语言执行各种操作。

JavaScript脚本

1、Hello World示例

         本实例操作如下:1、打开Photoshop;2、新建一个文件;3、新建一个ArtLayer图层;4、将ArtLayer转换为文本图层;5、将文本内容设置为“HelloWorld”。

JavaScript脚本语言为:

         实现效果为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//设置单位
app.preferences.rulerUnits =Units.INCHES
// 新建一个2*4INCHES的文件
var docRef =app.documents.add( 2, 4 )
//新建一个ArtLayer图层
var artLayerRef =docRef.artLayers.add()
//设置ArtLayer图层为文本图层
artLayerRef.kind =LayerKind.TEXT
//设置文本图层文字内容
var textItemRef = artLayerRef.textItem
textItemRef.contents ="Hello World"
//释放参考
docRef = null
artLayerRef = null
textItemRef = null

2、获得Application对象

         你可以通过预定义的全局对象app获得Photoshop Application对象。下面的例子说明了如何获取一个Document文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var docRef = app.documents[0]

上面的表达式也可写为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var docRef = documents[0]

3、新建一个对象

         你可以通过File > New新建一个PSD文件。别的类型的如图层、通道、路径等,你可以用过菜单或者别的方式新建。在JavaScript脚本中,你可以通过add()实现对象的新建。例如:

1) 新建一个PSD文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
documents.add()或者app.documents.add()

2) 新建一个ArtLayer图层

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
documents[0].artLayers.add()

4、设置激活对象

1) 设置激活文件

代码语言:javascript
代码运行次数:0
运行
复制
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var docRef = app.documents[0]
app.activeDocument= docRef

2) 设置激活ArtLayer图层

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docRef.activeLayer =docRef.layers[0]

3) 设置激活通道

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
docRef.activeChannels = newArray(docRef.channels[0], docRef.channels[2])

5、打开一个文件

         由于Photoshop能打开的格式多种多样,所以你可以选用open/Open/open()命令打开一个已存在的文件。

1) 打开一个PSD文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var fileRef =File("C:/Users/Administrator/Desktop/test.psd")
var docRef = app.open(fileRef)

2) 打开一个Pdf文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//设置单位
var originalRulerUnits =app.preferences.rulerUnits
app.preferences.rulerUnits =Units.PIXELS
//获得打开文件的名称
var fileRef = new File("C:/Users/Administrator/Desktop/myfile.pdf")
//新建一个PDFOpenOptions
var pdfOpenOptions = newPDFOpenOptions
pdfOpenOptions.antiAlias =true
pdfOpenOptions.mode =OpenDocumentMode.RGB
pdfOpenOptions.resolution = 72
pdfOpenOptions.page = 3
//打开文件
app.open( fileRef,pdfOpenOptions )

6、保存文件

         Photoshop可保存的文件格式如下:

1)  保存为jpg图片

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
jpgFile = new File("C:/Users/Administrator/Desktop/test.jpg" )
jpgSaveOptions = newJPEGSaveOptions()
jpgSaveOptions.embedColorProfile= true
jpgSaveOptions.formatOptions =FormatOptions.STANDARDBASELINE
jpgSaveOptions.matte =MatteType.NONE
jpgSaveOptions.quality = 1
app.activeDocument.saveAs(jpgFile,jpgSaveOptions, true,Extension.LOWERCASE)

6、layer层对象

         Photoshop对象模型里面包含两个layer层对象:图层(ArtLayer)和组(Layer Set)。

1) 创建一个ArtLayer图层对象

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//新建文件
app.documents.add()
//新建层
var layerRef =app.activeDocument.artLayers.add()
//设置层名称
layerRef.name ="MyBlendLayer"
layerRef.blendMode =BlendMode.NORMAL

2) 创建一个组

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//新建文件和图层
app.documents.add()
varlayer=app.activeDocument.artLayers.add()
layer.name="layer"
//新建组和图层
var newLayerSetRef =app.activeDocument.layerSets.add()
newLayerSetRef.name="layerset"
varlayerset=newLayerSetRef.artLayers.add()
layerset.name="layerset"

7、应用Layer Set对象

         你可以将一个图层移到一个组里,也可以进行图层链接等操作。

1) 复制图层到组

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
//新建文件,新建图层,新建组,并复制图层到组
var docRef =app.documents.add()
docRef.artLayers.add()
var layerSetRef =docRef.layerSets.add()
var layerRef =docRef.artLayers[0].duplicate(layerSetRef,ElementPlacement.PLACEATEND)

2) 链接图层

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var layerRef1 =docRef.artLayers.add()
var layerRef2 = docRef.artLayers.add()
layerRef1.link(layerRef2)

8、应用文本对象

1) ArtLayer转换为文本层。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var newLayerRef =docRef.artLayers.add()
newLayerRef.kind =LayerKind.TEXT

2) 给文本层添加文字

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var textLayerRef =docRef.artLayers.add()
textLayerRef.name = "mytext"
textLayerRef.kind = LayerKind.TEXT
var textItemRef =docRef.artLayers["my text"].textItem
textItemRef.contents ="Hello, World!"
textItemRef.justification =Justification.RIGHT

9、应用选择对象

1) 创建和定义选择

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var docRef =app.documents.add(500, 500)
var shapeRef = [
[0,0],
[0,100],
[100,100],
[100,0]
]

2) 添加边框

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
strokeColor = new solidColor
strokeColor.cmyk.cyan = 20
strokeColor.cmyk.magenta = 50
strokeColor.cmyk.yellow = 30
strokeColor.cmyk.black = 0
app.activeDocument.selection.stroke(strokeColor, 2,StrokeLocation.OUTSIDE, ColorBlendMode.VIVIDLIGHT, 75, false)

3) 反向选择

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var selRef =app.activeDocument.selection
selRef.invert()

4) 扩展、感染、羽化

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var selRef =app.activeDocument.selection
selRef.expand( 5 )
selRef.contract( 5 )
selRef.feather( 5 )
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013年12月23日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Photoshop脚本指南——Hello World
作为一个程序猿,每一个东西的学习都是从Hello World开始的,从今天开始,让我们一起进入Photoshop脚本的世界,并以Hello World开始我们的旅程。
牛老师讲GIS
2022/04/28
7430
Photoshop脚本指南——Hello World
PS脚本案例
IT工作者
2023/09/01
1.3K0
psd的js脚本
https://github.com/Adobe-CEP/CEP-Resources/tree/master/Documentation/Product specific Documentation/Photoshop Scripting
阿超
2023/07/26
4340
psd的js脚本
PhotoShop自动识别并安装字体的脚本
PhotoShop主要是美术在使用,在遇到其它同事也需要使用psd做一些操作时,就很容易遇到字体缺失的问题。
meteoric
2022/09/07
3.3K0
PS脚本篇--1.代码是什么,写代码干嘛?
最近挺迷茫,总感觉高不成低不就的,看源码或书的时候有些焦躁,好吧,也许又到瓶颈了... 先静一静吧,回想一开始学编程时,出发点之一是:想用脚本玩转PhotoShop,久而久之竟然忘记了 现在一些主流语言也都差不多接触了,面向对象的理解也挺深的,看到PS时,在想:换个心情呗! 环境 脚本语言: JavaScript IDE环境:Idea (随意,记事本也可以) PS版本:18.0.0 ---- 一、脚本的使用 1.HelloWolrd 走起 ---->[Hello.js]---------------
张风捷特烈
2020/04/30
1.5K0
PS脚本篇--1.代码是什么,写代码干嘛?
photoshop_python_api: 最好用的photoshop python api
在影视或者游戏的制作中我们多多少少会用到Photoshop, 但是Photoshop原生不支持Python, 这样会导致我们平常在做流程的时候打通其他环节到Photoshop的难度就加到了。如果买了Ftrack或者Shotgun的公司他们自带的工具链就支持通过python去操作Photoshop除此之外就通过Python的第三方库comtypes去操作Photoshop
用户9897904
2022/07/14
4.9K3
photoshop_python_api: 最好用的photoshop python api
PhotoShop脚本入门实例
PhotoShop版本:Photoshop CC 2020 低版本可能会影响对象定义
怪兽
2022/10/04
1.1K0
PhotoShop脚本入门实例
360桌面整理内存异常高根本原因原来是它?
事情的缘由是我的360桌面整理内存占用异常高,后来@360的工程师让他们调试了一下,找不到问题的根本;只知道是桌面上的PSD文件造成的。突然想起来,是不是PSD文件导致的?PSD只有一个图层为什么文件那么大?
2021/11/08
4910
photoshop卡顿问题
复制代码另存为del.jsx 点击文件菜单---浏览---选择刚才保存的jsx文件即可
2022/09/08
1.7K0
photoshop卡顿问题
一些实用的Photoshop快捷键
将所选文本的文字大小减小10 点像素 【Ctrl】+【Alt】+【Shift】+【<】
半夜喝可乐
2018/10/17
1.8K0
一些实用的Photoshop快捷键
设计师必看!Photoshop 2025正版安装指南:AI功能+环境配置全解析
Adobe Photoshop 2025是Adobe公司推出的最新版本图像处理软件,广泛应用于平面设计、摄影后期、UI设计等领域。其核心功能包括:
万里顾一诚
2025/03/21
4941
设计师必看!Photoshop 2025正版安装指南:AI功能+环境配置全解析
一个创建产品动画说明视频的新手指南
英文原文:A Step-by-step Guide to Creating Animated Product Explainer Videos
WindCoder
2018/09/20
3.1K0
一个创建产品动画说明视频的新手指南
Adobe Photoshop 2022 23.5.1.724 直装版
Adobe Photoshop 是一个由 Adobe 开发和发行的 图像处理软件。该软件提供对 Windows 和 macOS 的支持。
用户1040278
2022/10/19
6990
photoshop 2022中文版下载地址-photoshop 2023 永久使用
Photoshop 2022 2023 v23.4.1.547是由Adobe公司最新推出的高效、专业、实用的图像处理软件,知识兔同时该软件主要是以其强悍的编辑和调整、绘图等功能得到广泛的应用,知识兔其中还有各种图片的调整和图画绘制以及图像的修复、知识兔调色等一系列的工具都是数不胜数,使用范围也是非常的广,知识兔我们从照片修饰到海报、包装、横幅的制作,知识兔再到照片的处理,只要您需要我们就可以做到,知识兔丰富的预设让用户的工作可以更加的轻松。
用户10122115
2022/10/26
1.1K0
解决PS打开文件太卡的问题
今天让美工发我网站的banner源文件的时候,发现打开文件好卡c盘直接爆了,发现文件只有几十M,但是卡的跟幻灯片一样,很奇怪,打开其他文件就不卡,在一篇文章上面看到的解决方法如下,问题就是原始数据搞的鬼
小唐同学.
2022/02/18
2.4K0
photoshop学习笔记
窗口——工作区——复位基本功能:让软件界面恢复到默认的标准状态 所有的控制面板都在窗口菜单中,可以对其进行隐藏和显示 按下TAB键可以隐藏或显示工具箱,属性栏,控制面板 按下SHIFT+TAB键,可以只隐藏控制面板 新建文档: 基于互联网设计(屏幕显示):单位:像素,分辨率:72,颜色模式:RGB 基于印刷设计时:单位:毫米MM,分辨率:300,颜色模式:CMYK (一)矩形选框工具(椭圆选框)M 按SHIFT键可以强制为正方形(正圆) 按ALT键可以保持中心点不变 同时按下SHIFT+ALT键,可保持中心不变强制为正方形(正圆) (二)背景色 前景色填充:ALT+DELETE(删除) 背景色填充:CTRL+DELETE(删除) 按D键,恢复到默认的黑白色 按X键,前背景色的切换 (三)移动工具V 功能:移动对象 复制:按下ALT键用移动工具进行拖拽 (四)图层 新建图层:CTRL+ALT+SHIFT+N 图层编组:CTRL+G (五)保存和打开 保存:CTRL+S 可以把内容存储起来 另存为:CTRL+SHIFT+S,把文件重新保存一份 默认的格式:PSD(源文件格式) 打开的方式:CTRL+O 把文档拖拽至软件中也可以打开 (六):移动选取与移动内容的区别 移动选区:绘制选区后,用矩形选框工具指在选区内,会出现白色箭头,可以移动选区。(属性栏中必须选 中的新选区) 移动内容:绘制选区后,用移动工具指在选区内,会出现黑色箭头,可以移动选区内的内容。 (七)选区的修改 边界:会得到有一定宽度的环形区域,会有羽化效果 平滑:把直角选区变成圆角选区 扩展:均匀的扩大选区 收缩:均匀的缩小选区 (八)自由变换CTRL+T 按下SHIFT键,保持比例不变 按下ALT键,保持中心不变 调整四个角点可以调整整体比例,调整四个边点可以调整宽度和高度 按下SHIFT加工具本身的快捷键,可以切换选中的工具 CTRL+k:首选项 (九)羽化SHIFT+F6 羽化:让边缘变得柔和,半透明 选区的布尔运算:加选区,减选区,与选区相交 载入选区:按下CTRL键,点击图层缩略图可得到相应的选区 (十)常用快捷键 取消选区:CTRL+D 第一步撤销CTRL+Z,第二步以上的撤销CTRL+ALT+Z)默认撤销步数为20步。 放大:CTRL+”+” 缩小:CTRL+”-” 抓手工具:空格 CTRL+J:通过拷贝的图层(复制图层) 橡皮擦工具:E
HUC思梦
2020/09/03
3.3K0
adobe photoshop 认证证书
Adobe Photoshop是行业标准的图像编辑软件,在全球范围内被专业摄影师,业余摄影师和设计师使用,他们希望超越摄影机的拍摄范围来完善其数字图像。
IT胶囊
2022/09/13
1.8K0
adobe photoshop 认证证书
Shell脚本的认识 原
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。批处理文件的扩展名为bat 。目前比较常见的批处理包含两类:DOS批处理和PS批处理。PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本;而DOS批处理则是基于DOS命令的,用来自动地批量地执行DOS命令以实现特定操作的脚本。
wuweixiang
2018/08/14
1.1K0
Sketch 插件开发官方文档合集插件基础您的第一个插件开发环境调试ActionAPI发布插件插件捆绑插件,脚本和命令插件位置更多关于CocoaScriptSketchTool参考资源
我们努力使Sketch成为梦想中的“设计师工具箱”。但是每个人都有不同的需求,也许你需要一个我们还没有实现的功能。不要担心:插件已经可以满足您的需求,或者您可以轻松创建一个插件。 如果您有兴趣扩展Sketch,那么您就位于正确的位置。在这里,我们展示Sketch可扩展性文档的概要以及如何快速构建您的第一个Sketch插件。 如果您只想使用现有的插件,请参阅插件目录。 你可以用插件做什么? Sketch中的插件可以做任何用户可以做的事情(甚至更多!)。例如: 根据复杂的规则选择文档中的图层 操作图层属性 创建
iOSDevLog
2018/05/17
6.4K0
程序员对美工的五大抱怨
  就像猫和狗、该隐和亚伯一样,程序员和美工也是对死对头。程序员和美工就像来自不同星球的两种完全不同的人,他们脑袋所关心的事情也完全不同。 程序员希望网站运行起来完美,而美工希望网站看起来漂亮。 这次,我们将站在程序员的角度看看:程序员对美工的5个经典牢骚。 牢骚1: 为什么美工设计所有东西都喜欢用Flash?!   网站只需要很简单的按钮和一些文本就行了,但是美工却坚持要使用flash,就算加载的时间都是原来的三倍也不管。 问题   对于有些美工来说,单纯使用web技术(HTML、CSS、JavaSc
用户1289394
2018/02/28
1.1K0
推荐阅读
相关推荐
Photoshop脚本指南——Hello World
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验