第一件事是那些在同一时间线和框架上的300+形状?其次是那些形状分组?
var el = fl.getDocumentDOM().getTimeline().layers[0].frames[0].elements;
for(var i = 0; i<el.length; i++)
{
fl.trace(i+" - " + el[i]);
}
这将枚举第一帧第一层时间轴上的所有元素(包括形状)。
现在未分组的形状将被视为单个形状,矩形或椭圆形基元将分开。
这是Element object和此Shape object doc的文档。
以下是工作我用改性convertToGraphics方法发现here样品例如:
var el = fl.getDocumentDOM().getTimeline().layers[0].frames[0].elements;
for(var i = 0; i<el.length; i++)
{
fl.trace(i+" - " + el[i]+", "+el[i].isGroup);
convertToGraphics(el[i], "shape"+i);
}
//converts all current elements on the current timeline to movie clips with a effectSymbols move to Effect folder in the library and center registration point
function convertToGraphics(el, name)
{
try
{
var symbolName = name;
var cur_lib = fl.getDocumentDOM().library;
fl.getDocumentDOM().selectNone();
fl.getDocumentDOM().selection = [el];
while(cur_lib.itemExists(symbolName+i))
symbolName=symbolName+1;
var newSym = fl.getDocumentDOM().convertToSymbol("movie clip", symbolName+i, "center");
}
catch (e)
{
fl.trace("Exception in : convertToGraphics" + e);
}
}
问候
P.S. 2小时的搜索是不够的
我想人们首先将它们绘制为符号,然后将它们放置在舞台上,而不是相反。这更容易,更通用。我认为你应该使用你的第一个发现,超过300次。 – Vesper
嗯,在这种情况下,我的符号是单词,它更容易输入整个段落,然后使用我创建的JSFL脚本来分割单词。 – KorinW