イラレの掃除系スクリプト
illustrator scriptです。
アイテムのないレイヤーを削除
レイヤー子階層レイヤーもチェックして、アイテムがなければ削除します。
レイヤー整理に使って下さい。
以下コードです。ファイルも下にあります。
var doc = app.activeDocument;
function isLayerEmpty(layer) {
if (layer.pageItems.length > 0) return false;
for (var i = 0; i < layer.layers.length; i++) {
if (!isLayerEmpty(layer.layers[i])) return false;
}
return true;
}
function deleteEmptyLayers(layers) {
for (var i = layers.length - 1; i >= 0; i--) {
var layer = layers[i];
if (isLayerEmpty(layer)) {
layer.remove();
} else {
deleteEmptyLayers(layer.layers);
}
}
}
deleteEmptyLayers(doc.layers);
alert('空のレイヤーをすべて削除しました。');