Photoshop操作脚本失败

问题描述:

我想写一个脚本来应用Photoshop滤镜。我在寻找this blog这似乎有一些很好的建议,但是当我尝试基本示例(下面列出)时,出现以下错误。Photoshop操作脚本失败

Traceback (most recent call last): 
    File "C:\Users\Daniel\EclipseWorkspace\PhotoScript\src\scriptLaunch.py", line 3, in <module> 
    psApp = win32com.client.Dispatch("Photoshop.Application") 
    File "C:\Python27\lib\site-packages\win32com\client\__init__.py", line 95, in Dispatch 
    dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch,userName,clsctx) 
    File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 108, in _GetGoodDispatchAndUserName 
    return (_GetGoodDispatch(IDispatch, clsctx), userName) 
    File "C:\Python27\lib\site-packages\win32com\client\dynamic.py", line 85, in _GetGoodDispatch 
    IDispatch = pythoncom.CoCreateInstance(IDispatch, None, clsctx, pythoncom.IID_IDispatch) 
pywintypes.com_error: (-2147221005, 'Invalid class string', None, None) 

我不知道是什么原因导致了这个问题。 This solution已经实施,所以我不知道该怎么做。我上的PyDev和Photoshop Elements运行Python 2.7版10

我的代码:

import win32com.client 

psApp = win32com.client.Dispatch("Photoshop.Application") //the line causing the error 

psApp.Open(r"D:\temp\blah.psd")   # Opens a PSD file 
doc = psApp.Application.ActiveDocument # Get active document object 
layer = doc.ArtLayers[0]    # Get the bottom-most layer 
layer.AdjustBrightnessContrast(20,-15) # Bright +20, Contrast -15 
doc.Save() 

我敢肯定Photoshop的API仅适用于Photoshop的CSX版本,而不是 '元素'。我认为这是说班级不可用,因为您没有必要的.dll文件(或者如果您使用的是Mac,则是相同的)。 http://www.adobe.com/devnet/photoshop/sdk.html

+0

啊,这会阻尼它。你碰巧知道是否像appscript(或一些相当的东西)的工作? – Daniel

+0

如果您的Photoshop软件与Extendscript Toolkit一起打包,您应该可以使用javascript,applescript或vbscript编写脚本。但我认为这也可能只是CS。也许可以试试Adobe开发人员论坛,看看他们说了些什么。 – pdizz