Vous avez besoin d'un ID de modèle - la façon de faire plus simple que est d'utiliser le scriptListener et de trouver avec un test rapide remplir et vérifier le code d'écoute. Voici un exemple:
var myPattern = "d5706459-5277-11e7-aad4-ff82069d78d5";
fill_with_pattern(myPattern)
function fill_with_pattern(patternID)
{
var idFl = charIDToTypeID("Fl ");
var desc1283 = new ActionDescriptor();
var idUsng = charIDToTypeID("Usng");
var idFlCn = charIDToTypeID("FlCn");
var idPtrn = charIDToTypeID("Ptrn");
desc1283.putEnumerated(idUsng, idFlCn, idPtrn);
var idPtrn = charIDToTypeID("Ptrn");
var desc1284 = new ActionDescriptor();
var idNm = charIDToTypeID("Nm ");
desc1284.putString(idNm, """40x40"""); // id name
var idIdnt = charIDToTypeID("Idnt");
desc1284.putString(idIdnt, patternID);
var idPtrn = charIDToTypeID("Ptrn");
desc1283.putObject(idPtrn, idPtrn, desc1284);
var idOpct = charIDToTypeID("Opct");
var idPrc = charIDToTypeID("#Prc");
desc1283.putUnitDouble(idOpct, idPrc, 100.000000); //opacity
var idMd = charIDToTypeID("Md ");
var idBlnM = charIDToTypeID("BlnM");
var idNrml = charIDToTypeID("Nrml");
desc1283.putEnumerated(idMd, idBlnM, idNrml);
executeAction(idFl, desc1283, DialogModes.NO);
}
Je pense que vous pouvez appeler un modèle par son nom au lieu de son ID - mais je ne l'ai pas réussi le faire avec succès. Si vous essayez avec un modèle préexistant, comme Bubbles, vous obtiendrez du code comme ceci:
desc1297.putString(idNm, """$$$/Presets/Patterns/Patterns_pat/Bubbles=Bubbles""");
var idIdnt = charIDToTypeID("Idnt");
desc1297.putString(idIdnt, """b7334da0-122f-11d4-8bb5-e27e45023b5f""");