feat: AI套图分层方案 + Gemini集成 - 4种图案类型处理 + 正片叠底 + 宽高比 + 模型选择
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
45
PSMARK代码块/新的排序图层顺序改名.jsx
Normal file
45
PSMARK代码块/新的排序图层顺序改名.jsx
Normal file
@@ -0,0 +1,45 @@
|
||||
|
||||
|
||||
function 图层排序改名(){
|
||||
|
||||
var doc = app.activeDocument;
|
||||
|
||||
// 函数:获取图层的面积
|
||||
function getLayerArea(layer) {
|
||||
var bounds = layer.bounds;
|
||||
var width = bounds[2].value - bounds[0].value;
|
||||
var height = bounds[3].value - bounds[1].value;
|
||||
return width * height;
|
||||
}
|
||||
|
||||
// 创建一个包含所有图层及其面积的数组
|
||||
var layers = [];
|
||||
for (var i = 0; i < doc.layers.length; i++) {
|
||||
var layer = doc.layers[i];
|
||||
var area = getLayerArea(layer);
|
||||
layers.push({ layer: layer, area: area });
|
||||
}
|
||||
|
||||
// 按面积对图层进行排序
|
||||
layers.sort(function(a, b) {
|
||||
return b.area - a.area; // 从大到小排序
|
||||
});
|
||||
|
||||
// 正则表达式,用于移除图层名称中的最后一个字符
|
||||
var regex = /(.+)-\d+$/;
|
||||
|
||||
// 重新排列图层,并重命名
|
||||
for (var i = 0; i < layers.length; i++) {
|
||||
// 移动图层到文档顶部
|
||||
layers[i].layer.move(doc, ElementPlacement.PLACEATBEGINNING);
|
||||
|
||||
// 获取原始图层名称,并使用正则表达式处理
|
||||
var originalName = layers[i].layer.name;
|
||||
var newName = originalName.replace(regex, "$1");
|
||||
|
||||
// 添加新的排序编号
|
||||
layers[i].layer.name = newName + "-" + (i + 1);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user