Open skeleturtle opened 1 year ago
@skeleturtle Sure, I'll find time over the weekend to write an example for you
@skeleturtle The following code can help you create colorlookup layer, for the action of load LUT, I have not found the code that can be executed correctly
from photoshop import Session
with Session() as api:
app = api.app
idMk = app.charIDToTypeID("Mk ")
desc291 = api.ActionDescriptor()
idnull = app.charIDToTypeID("null")
ref28 = api.ActionReference()
idAdjL = app.charIDToTypeID("AdjL")
ref28.putClass(idAdjL)
desc291.putReference(idnull, ref28)
idUsng = app.charIDToTypeID("Usng")
desc292 = api.ActionDescriptor()
idType = app.charIDToTypeID("Type")
idcolorLookup = app.stringIDToTypeID("colorLookup")
desc292.putClass(idType, idcolorLookup)
idAdjL = app.charIDToTypeID("AdjL")
desc291.putObject(idUsng, idAdjL, desc292)
app.executeAction( idMk, desc291)
load 3Dlut from JS
var idMk = charIDToTypeID( "Mk " );
var desc45 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref14 = new ActionReference();
var idAdjL = charIDToTypeID( "AdjL" );
ref14.putClass( idAdjL );
desc45.putReference( idnull, ref14 );
var idUsng = charIDToTypeID( "Usng" );
var desc46 = new ActionDescriptor();
var idType = charIDToTypeID( "Type" );
var idcolorLookup = stringIDToTypeID( "colorLookup" );
desc46.putClass( idType, idcolorLookup );
var idAdjL = charIDToTypeID( "AdjL" );
desc45.putObject( idUsng, idAdjL, desc46 );
executeAction( idMk, desc45, DialogModes.NO );
var idsetd = charIDToTypeID( "setd" );
var desc49 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
var ref15 = new ActionReference();
var idAdjL = charIDToTypeID( "AdjL" );
var idOrdn = charIDToTypeID( "Ordn" );
var idTrgt = charIDToTypeID( "Trgt" );
ref15.putEnumerated( idAdjL, idOrdn, idTrgt );
desc49.putReference( idnull, ref15 );
var idT = charIDToTypeID( "T " );
var desc50 = new ActionDescriptor();
var idlookupType = stringIDToTypeID( "lookupType" );
var idcolorLookupType = stringIDToTypeID( "colorLookupType" );
var idthreeDLUT = stringIDToTypeID( "3DLUT" );
desc50.putEnumerated( idlookupType, idcolorLookupType, idthreeDLUT );
var idNm = charIDToTypeID( "Nm " );
desc50.putString( idNm, """your/3dlut/file.cube""" );
var idprofile = stringIDToTypeID( "profile" );
var idLUTFormat = stringIDToTypeID( "LUTFormat" );
var idLUTFormatType = stringIDToTypeID( "LUTFormatType" );
var idLUTFormatCUBE = stringIDToTypeID( "LUTFormatCUBE" );
desc50.putEnumerated( idLUTFormat, idLUTFormatType, idLUTFormatCUBE );
var idLUTthreeDFileData = stringIDToTypeID( "LUT3DFileData" );
var idLUTthreeDFileName = stringIDToTypeID( "LUT3DFileName" );
desc50.putString( idLUTthreeDFileName, """your/3dlut/file.cube""" );
var idcolorLookup = stringIDToTypeID( "colorLookup" );
desc49.putObject( idT, idcolorLookup, desc50 );
executeAction( idsetd, desc49, DialogModes.NO );
pretty much what the title says, is it possible to create a color look up layer and load a 3D lut file?