我想制作一个非常简单的脚本。我只想取一个具有源文本基本图形属性的层,并将该层重命名为该源文本当前的值
这是相关的代码,它在所有选定的层上循环,应该访问层的属性,并将其重命名为源文本属性的值
for(var i = 0; i < curComp.selectedLayers.length; i++) {
var currLayer = curComp.selectedLayers[i];
var sourceTextProp = currLayer.sourceText;
var name = sourceTextProp.value;
try{
currLayer.name = name;
}catch(error) {
$.writeln('this layer has no source');
}
currLayer.name = name;
}
var sourceTextProp = currLayer.sourceText; var name = sourceTextProp.value;
给我带来了很多问题。我试着把它当作一个文本层,在这里试着使用一个属性对象,但都无济于事。我不知道该做什么,网上似乎也没有教程能很好地说明这一点。
有没有一种方法可以搜索对象并找到特定类型的属性?类似于搜索";源文本";让脚本找到值?这感觉像是我应该能够做的事情。
这里的关键问题是无法访问源文本的值。如果我只是给它一个字符串,我可以用这个脚本重命名层。
任何帮助都将不胜感激。
文本层的sourceText
属性是textDocument对象,而不是您所期望的字符串。您可以使用访问其文本
var name = sourceTextProp.value.text;