2016-01-15 1 views
1

Я пытаюсь объединить несколько файлов PS, в основном с двумя способами:Сценарии Photoshop с Python COM. Дублирование и сглаживать проблемы

1) Свести, SelectAll, копировать, изменять ActiveDocument и Paste. Этот первый возвращает TypeError на первом шаге.

Traceback (most recent call last): 
    File "C:\..\Merge.py", line 5, in <module> 
    doc.flatten() 
TypeError: 'NoneType' object is not callable 
[Finished in 0.7s] 

Внутри Photoshop я могу наблюдать документ уплощенные, но это вернуть. остановка скрипта.

2) Duplicate LayerSet, указывающий на целевой документ.

Traceback (most recent call last): 
    File "C:\..\Merge.py", line 27, in <module> 
    appRef.activeDocument.LayerSets[0].duplicate(appRef.documents[0]); 
    File "C:\python27-64\lib\site-packages\win32com\client\dynamic.py", line 197, in __call__ 
    return self._get_good_object_(self._oleobj_.Invoke(*allArgs),self._olerepr_.defaultDispatchName,None) 
pywintypes.com_error: (-2147352573, 'Member not found.', None, None) 
[Finished in 4.7s] 

То же здесь! LayerSet дублируется

  • Photoshop CC 2014 64bits
  • Python 2.7 64бит
  • win32com для Python 2.7 64bits

ответ

0

Видимо, Есть проблемы с win32com.

comtypes работает очень хорошо! переустановка python 2.7 64 бит. Вместо этого установите «Установить только для меня», а «Установить для всех пользователей», затем установите comtypes.

Смежные вопросы