PS脚本小记(1)
本帖最后由 kftianji 于 2019-2-15 03:25 编辑photoshop脚本的保留字符说明可在度娘搜索:ps脚本 属性与事件
另转载《Adobe CEP 扩展开发教程 「 6 」 Photoshop 中文脚本参考》部分翻译内容
------------------photoshop平面设计软件自带脚本功能,在这就把比别人的知识,自己的理解糅杂在一起丢在这里以供大家一笑。本人超级业余,以下所讲内容,不如说以下所提问题。
photoshop支持的脚本语言有:AS,javascript,vbscript,VB等。
以下用jiavascript为例子用Adobe自带的ExtendScript Toolkit.exe调试。亦可以直接用.txt文档编辑,改后缀为.jsx直接用photoshop运行。
photoshop运行脚本的方法是:菜单拦[文件]--[脚本]---[浏览]---加载脚本即可。
为了方便设置个快捷键:菜单栏[编辑]--[键盘快捷键...]--打开[▲文件]--下拉找到[浏览...]点击--设置为F1 (F1万年无用的 快捷键,替换后效果显著,也可以用别的快捷键替换)。
以下简单的用文档编辑改后缀方式:
文件1:弹出对话框显示“提示窗文字若干”
alert("提示窗文字若干")
语句用法:
文件2:c++的语法完全够用,这里纯粹为了测试if和for是否为可用语法
var docs=app.documents.length//读取当前已打开文档总数
if(docs<1)
{
for(var i=0;i<2;i++){
testtwo()}}//弹出两次提示框
else
testone()
function testone(){
alert(docs)
}
function testtwo(){
alert("未有文件打开");
}
文件3:这个脚本功能是把打开的所有文件转存为jpg格式存在f:\temp\文件夹下
var thisdoc="F:\\temp\\jpg\\"
var asCopy=true //以副本方式保存
var extensionType=Extension.LOWERCASE //定义后缀为小写格式
var document
var docname
var fileOut
var ooptions
var docnumber=app.documents.length //获取当前文档数量
for(var i=0;i<docnumber;i++)
{
savedoc()
}
function savedoc(){
document=app.activeDocument //当前文档
docname=document.name //文件名称
fileOut=new File(thisdoc+docname) //保存路径
options=new JPEGSaveOptions() //保存格式
options.embedColoProfile=true //嵌入色彩配置文件
options.formatOptions = FormatOptions.STANDARDBASELINE //格式选项=基线(“标准”)
options.matte=MatteType.NONE //索引颜色--杂边=缺省
options.quality=12 //文档品质=最高
document.close(document.saveAs(fileOut,options,asCopy,extensionType)) //执行语句
}
//new Folder("D:/priceCard/result").create ()//创建文件夹
文件4:仍然是转格式,转为psd并新建一空白图层
var thisdoc="F:\\temp\\psd\\"
var options=PhotoshopSaveOptions //保存格式
var asCopy=true //以副本方式保存
var extensionType=Extension.LOWERCASE //定义后缀为小写格式
var docnumber=app.documents.length //获取当前文档数量
var document
var docname
var fileOut
for(var i=0;i<docnumber;i++)
{
savedoc()
}
function savedoc(){
document=app.activeDocument //当前文档
document.artLayers.add() //新建1空白图层
docname=document.name
fileOut=new File(thisdoc+docname) //保存路径
document.saveAs(fileOut,options,asCopy,extensionType) //执行语句
document.close(SaveOptions.DONOTSAVECHANGES) //强制关闭文档
}
函数说明:
saveAs(saveIn[,options][,asCopy][,extensionType])
1参:文件路径文件名 2参:文件格式(可无) 3参:是否为存为副本(可无) 4参:后缀名大小写(可无)
2参可选格式有:
BMPSaveOptions
DCS1_SaveOptions
DCS2_SaveOptions
EPSSaveOptions
GIFSaveOptions
JPEGSaveOptions
PDFSaveOptions
PhotoshopSaveOptions
PICTFileSaveOptions
PICTResourceSaveOptions
PixarSaveOptions
PNGSaveOptions
RawSaveOptions
SGIRGBSaveOptions
TargaSaveOptions
TiffSaveOptions
PhotoshopSaveOptions为psd格式
文件属性设置:无
JPEGSaveOptionsjpg格式
文件属性设置:
embedColorProfile 嵌入色彩配置文件
formatOptions 格式三选一
===========可选值============
FormatOptions.STANDARDBASELINE 基线(”标准”)
FormatOptions.OPTIMIZEDBASELINE基线已优化
FormatOptions.PROGRESSIVE 连续
scans扫描
matte杂边
quality品质(0~12)
PNGSaveOptions png格式
文件属性设置:
compression压缩 (0-9)
interlaced交错
BMPSaveOptions bmp格式
文件属性设置:
alphaChannels保存alpha通道
depth 深度
===========可选值============
BMPDepthType
BMPDepthType.BMP_A1R5G5B5
BMPDepthType.BMP_A4R4G4B4
BMPDepthType.BMP_A8R8G8B8
BMPDepthType.BMP_R5G6B5
BMPDepthType.BMP_R8G8B8
BMPDepthType.BMP_X1R5G5B5
BMPDepthType.BMP_X4R4G4B4
BMPDepthType.BMP_X8R8G8B8
BMPDepthType.EIGHT
BMPDepthType.FOUR
BMPDepthType.ONE
BMPDepthType.SIXTEEN
BMPDepthType.THIRTYTWO
BMPDepthType.TWENTYFOUR
flipRowOrder翻转行序
osType系统类型
===========可选值============
OperatingSystem.OS2 OS2
OperatingSystem.WINDOWS Windows
rleCompression使用 RLE 压缩,只在 osType 为 OperatingSystem.WINDOWS 时有效。
------------------------------------------------------------------------------
在文件3,、文件4中,var document=app.activeDocument必须在循环体内,因为每循环一次就必须重读一次当前文档,否则就会出错。
==========
textRef.contents = "a;lkdjfas;ldkf \r\n\t ;akldjfa;kldjfdslkfj"//输入文本内容
[\r\n\t]在ps中的效果分别是:
[\r]: 实际文本中 加入回车 。
[\n]: 图层名显示 带回车的文本,实际文本中 空出6个字符。
[\t]: 实际文本中 空出4个字符
先写到这里
希望真正的行家里手不吝指点!
{:301_1003:}{:301_1003:}请问英文脚本如何转换成中文版本PS可识别的? 学习了楼主,之前竟然不知道PS可以支持javascript脚本,谢谢楼主 。。。。。。。。。。。。。。。。。。 KevinHacker 发表于 2019-1-29 17:34
请问英文脚本如何转换成中文版本PS可识别的?
我用的Dao版中文CC运行的英文脚本完全没问题;谢谢你的顶贴 感谢楼主的分享。 非常感谢,非常全的资料,一二三我都找到了,楼主真好,膜拜 大神何时归来?我一直在等您 为了证明我来过,特地顶下帖子 感谢楼主分享
页:
[1]