-2

我想要检查某个图层是否具有透明度为 0% 的所有像素的函数,换句话说,图层只是空的。

function isLayerEmptyCheck(layer) {
   //code
}

不幸的是,我在任何此类属性的文档( Photoshop CS6 脚本指南Photoshop CS6 JavaScript 参考)中找不到任何信息。artlayer

4

1 回答 1

1

artlayer bounds如果其数组的所有值都等于 ,只需检查 的属性即可"0 px"。当它们都为 时"0 px",则表示该层为空。

下面我创建了检查输入层是否未填充的函数。

#target photoshop

var doc = app.activeDocument;
var certainLayer = doc.artLayers[0];

var isLayerEmpty = isLayerEmptyCheck(certainLayer);

alert(isLayerEmpty);

function isLayerEmptyCheck(layer) {

    var isLayerEmpty = new Boolean;

    var LayerBounds = layer.bounds;
    if (LayerBounds[0] === "0 px" && LayerBounds[1] === "0 px" && LayerBounds[2] === "0 px" && LayerBounds[3] === "0 px") {
        return isLayerEmpty = true;
    } else {
        return isLayerEmpty = false;
    }

}
于 2020-01-15T19:13:07.467 回答