Layer Name from plug-in

  • Автор темы Автор темы Psycos
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Psycos

Участник
Топикстартер
Сообщения
2
Реакции
0
Как задать названия Layer-в из plug-in для
Photoshop?

Использую MS VC7 и Adobe SDK6 для создания Atomation plug-in.

Читать названия Layers, Channles, доступ к planes - сколько угодно, а вот банальную
строчку- имя Layer задать не получается...

Кто нибудь сталкивался с проблемой?

Просветите чайника, пожалуйста...
 
двойной щелчок на названии слоя и обзываешь его как хочешь.
 
Автор оригинала Прохожий
двойной щелчок на названии слоя и обзываешь его как хочешь.

Проблема в том, что переименовывание должно осуществляться не пользователем с мышкой, а из программного кода плагина... А там на ура идет чтение, а вот с записью - не получается что-то...
 
Вот так делается в VB:

Function MakeNewLayer(layerName As String, Opacity As Double, BlendMode As Long, Group As Boolean) As Long
Dim descriptor As IActionDescriptor
Dim object As IActionDescriptor
Dim reference As IActionReference
Dim result As IActionDescriptor

On Error Resume Next

' create the descriptor and reference objectss
Set descriptor = PSApp.MakeDescriptor
Set object = PSApp.MakeDescriptor
Set reference = PSApp.MakeReference

'build the refernce
reference.PutClass phClassLayer

'build the descriptor
descriptor.PutReference phKeyNull, reference
object.PutString phKeyName, layerName
object.PutUnitDouble phKeyOpacity, phUnitPercent, Opacity
object.PutEnumerated phKeyMode, phTypeBlendMode, BlendMode
object.PutBoolean phKeyGroup, Group

descriptor.PutObject phKeyUsing, phClassLayer, object

'play the event and get back the result
Set result = gControl.Play(phEventMake, descriptor, phDialogSilent)

'now check for errors
MakeNewLayer = CheckPlayResult(result)
End Function

Описание этой функции есть в документе C:\Program Files\Adobe\Adobe Photoshop 6.0 SDK\Documentation\Photoshop OLE Automation.pdf
 
Статус
Закрыто для дальнейших ответов.