Public Sub psEditTextLayer(Start As Long, _
length As Long, _
fontParams As columnFontOptions)
Dim objApp As New Photoshop.Application
Dim desc2 As New Photoshop.ActionDescriptor
Dim desc3 As New Photoshop.ActionDescriptor
Dim desc6 As New Photoshop.ActionDescriptor
Dim desc8 As New Photoshop.ActionDescriptor
Dim desc7 As New Photoshop.ActionDescriptor
Dim list2 As New Photoshop.ActionList
Dim ref1 As New Photoshop.ActionReference
On Error GoTo ErrHandler
If Start + length <= 0 Then Exit Sub
Call ref1.PutEnumerated(objApp.CharIDToTypeID("TxLr"), _
objApp.CharIDToTypeID("Ordn"), _
objApp.CharIDToTypeID("Trgt"))
Call desc2.PutReference(objApp.CharIDToTypeID("null"), ref1)
Call desc6.PutInteger(objApp.CharIDToTypeID("From"), Start)
Call desc6.PutInteger(objApp.CharIDToTypeID("T "), Start + length)
Call desc7.PutString(objApp.StringIDToTypeID("fontPostScriptName"), fontParams.fntcPsName)
Call desc7.PutString(objApp.CharIDToTypeID("FntN"), fontParams.fntcName)
Call desc7.PutString(objApp.CharIDToTypeID("FntS"), fontParams.fntcStyle)
Call desc7.PutInteger(objApp.CharIDToTypeID("Scrp"), 7)
Call desc7.PutInteger(objApp.CharIDToTypeID("FntT"), 1)
Call desc7.PutUnitDouble(objApp.CharIDToTypeID("Sz "), _
objApp.StringIDToTypeID("pointsUnit"), fontParams.fntcSize)
Call desc8.PutDouble(objApp.CharIDToTypeID("Cyn "), fontParams.fntcCyan)
Call desc8.PutDouble(objApp.CharIDToTypeID("Mgnt"), fontParams.fntcMagenta)
Call desc8.PutDouble(objApp.CharIDToTypeID("Ylw "), fontParams.fntcYellow)
Call desc8.PutDouble(objApp.CharIDToTypeID("Blck"), fontParams.fntcBlack)
Call desc7.PutObject(objApp.CharIDToTypeID("Clr "), objApp.CharIDToTypeID("CMYC"), desc8)
Call desc6.PutObject(objApp.CharIDToTypeID("TxtS"), objApp.CharIDToTypeID("TxtS"), desc7)
Call list2.PutObject(objApp.CharIDToTypeID("Txtt"), desc6)
Call desc3.PutList(objApp.CharIDToTypeID("Txtt"), list2)
Call desc2.PutObject(objApp.CharIDToTypeID("T "), objApp.CharIDToTypeID("TxLr"), desc3)
Call objApp.ExecuteAction(objApp.CharIDToTypeID("setd"), desc2, 3)
Set desc2 = Nothing
Set desc3 = Nothing
Set desc6 = Nothing
Set desc8 = Nothing
Set desc7 = Nothing
Set list2 = Nothing
Set ref1 = Nothing
Exit Sub
ErrHandler:
MsgBox Err.description
End Sub