Используя ExtendScript для Photoshop, есть ли более элегантный способ переключения режима смеси кисти, чем этот?Javascript

Форум по Javascript
Anonymous
Используя ExtendScript для Photoshop, есть ли более элегантный способ переключения режима смеси кисти, чем этот?

Сообщение Anonymous »

Я мог бы сказать, что я получил здесь свои деньги, используя два LLM, чтобы собрать сценарий в ExtendScript, который переключает режим смеси кисти с нормального на умножение и обратно. Я всегда хотел узнать больше о программном расширении Photoshop, но никогда не использовал для этого, до сих пор.
Интересно: это в целом, что делают LLM, создавая код, сложно понять, чтобы понять меня, мирян, или этот вывод просто выглядит как ExtendScript, когда применяется к двигателю Photoshop?
Код ниже. Мне любопытно: насколько хорош этот код вообще? Это вообще оценивается как все? Я как бы ожидаю, что много этого кода будет избыточным, а также иметь код, который ничего не делает, но я не достаточно образован, чтобы даже догадаться. < /P>
function toggleBrushBlendMode() {
try {
// Reference the brush tool options
var ref = new ActionReference();
ref.putProperty(charIDToTypeID("Prpr"), stringIDToTypeID("tool"));
ref.putEnumerated(charIDToTypeID("capp"), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));

var toolDesc = executeActionGet(ref);
if (!toolDesc.hasKey(stringIDToTypeID("currentToolOptions"))) {
throw new Error("No currentToolOptions found.");
}

var options = toolDesc.getObjectValue(stringIDToTypeID("currentToolOptions"));
var currentBlendMode = options.getEnumerationValue(stringIDToTypeID("mode"));
var currentModeStr = typeIDToStringID(currentBlendMode);

// Decide on the new mode
var newMode = (currentModeStr === "normal") ? "multiply" : "normal";

// Set the brush tool options with new blend mode
var desc = new ActionDescriptor();
var toolRef = new ActionReference();
toolRef.putClass(stringIDToTypeID("paintbrushTool"));
desc.putReference(charIDToTypeID("null"), toolRef);

var optionsDesc = new ActionDescriptor();
optionsDesc.putEnumerated(stringIDToTypeID("mode"), stringIDToTypeID("blendMode"), stringIDToTypeID(newMode));
desc.putObject(charIDToTypeID("T "), stringIDToTypeID("paintbrushTool"), optionsDesc);

executeAction(charIDToTypeID("setd"), desc, DialogModes.NO);
} catch (e) {
alert("Error: " + e.message);
}
}

toggleBrushBlendMode();

< /code>
Что вы думаете? Достаточно ли это хорошо для переключателя режима смеси? Я питал их вывод обратно к ним, чтобы, надеюсь, приблизиться к решению моей действительно небольшой проблемы: я хотел иметь возможность переключаться между режимами смешивания на нажатию кнопки.>

Подробнее здесь: https://stackoverflow.com/questions/796 ... ing-a-brus

Вернуться в «Javascript»