1:python 控制ps批处理相关资料
1.1:win32com.client库调用ps动作:
import os
from win32com.client import Dispatch, GetActiveObject, GetObject
def getFileList(dir, Filelist, ext=None):
"""
获取文件夹及其子文件夹中文件列表
输入 dir:文件夹根目录
输入 ext: 扩展名
返回: 文件路径列表
"""
newDir = dir
if os.path.isfile(dir):
if ext is None:
Filelist.append(dir)
else:
if ext in dir[-3:]: # jpg为-3/py为-2
Filelist.append(dir)
elif os.path.isdir(dir):
for s in os.listdir(dir):
newDir = os.path.join(dir, s)
getFileList(newDir, Filelist, ext)
return Filelist
org_img_folder = r'F:\Code_all_代码\人工脚本\美创服饰\python控制ps\jpg图\\'
# 检索文件
imglist = getFileList(org_img_folder, [], 'jpg')
print(imglist)
print('本次执行检索到 ' + str(len(imglist)) + ' 个jpg文件\n')
print(len(imglist))
if len(imglist):
try:
app = GetActiveObject("Photoshop.Application")
except:
app = Dispatch("Photoshop.Application")
# fileName = "C:\\Users\\Administrator\\Desktop\\QQ截图20220331205254.png"
# docRef = app.Open(fileName)
for i in imglist:
imgname = os.path.splitext(os.path.basename(i))[0]
print(i)
docRef = app.Open(i)
#
app.DoAction('88', '默认动作')
1.2.用pythonwin32在Photoshop中移动图层com.clien
我一直在使用move layer函数,用python编写photoshop脚本。层结束于其他层集内部,而不是在它们之后,等等
在Photoshop的Javascript中执行此操作的本机命令是:
layer.move(relativeObject, insertionLocation)
其中insertionLocation可以是:
在元素放置。内部, ElementPlacement.PLACEATBEGINNING, ElementPlacement.PLACEATEND, ElementPlacement.PLACEBEFORE,或ElementPlacement.PLACEAFTER之后在
我当前的代码如下:
下面是我对常数值的猜测,显然是错误的:
ElementPlacementPLACEATBEGINNING = 1
ElementPlacementINSIDE = 2
ElementPlacementPLACEBEFORE = 3
ElementPlacementPLACEAFTER = 4
ElementPlacementPLACEATEND = 5
我试着跟踪这些常量的本机值,但Photoshop很好地隐藏了这些值。我也尝试过操作管理器代码,但我发现它有点难以理解。在
有人知道用python在photoshop中移动图层的可靠方法吗?首选操作管理器代码,但不是必需的。
本文介绍了如何使用Python的win32com.client库来调用Photoshop的动作,以及在Photoshop中移动图层的挑战。作者面临的问题在于无法正确设置图层的插入位置,寻求关于在Python中实现类似Photoshop Javascript中ElementPlacement常量的方法。
725

被折叠的 条评论
为什么被折叠?



