在 Flash CS5 中将多个形状和组转换为影片剪辑/符号
Posted
技术标签:
【中文标题】在 Flash CS5 中将多个形状和组转换为影片剪辑/符号【英文标题】:Converting Multiple Shapes & Groups to Movieclips / Symbols in Flash CS5 【发布时间】:2012-10-09 16:37:27 【问题描述】:我已经在网上搜索了大约 2 个小时,现在正在寻找扩展 (MXP) 或 JSFL 脚本来帮助我将舞台上的 300 多个形状转换为符号。名称无关紧要,它们可以是 symbol_001、002 等。这似乎是一项常见的任务,我很惊讶没有人在 *** 上甚至在 actionscript.org 上问过。
我遇到了这个,但它不是我需要的...它一次只做一个符号...:http://www.adobe.com/cfusion/exchange/index.cfm?event=extensionDetail&loc=en_us&extid=1848523
虽然这个是我想要的,但它只用于位图,并且只用于库中的位图。 http://benclinkinbeard.com/2006/07/flash-extension-convert-bitmaps-to-symbols/
请帮忙!
【问题讨论】:
我猜人们首先将它们绘制为符号,然后将它们放置在舞台上,反之亦然。这更容易,更通用。我认为你应该使用你的第一个发现,超过 300 次。 嗯,在这种情况下,我的符号是单词,我更容易输入整个段落,然后使用我创建的 JSFL 脚本将单词切分。 【参考方案1】:第一件事是在同一时间轴和帧上的 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);
最好的问候
附言2 小时的搜索是不够的
【讨论】:
太棒了!谢谢。我会继续研究。感谢您的帮助 我收到“Access if undefined property fl”错误,我该如何解决?谢谢!fl
是 flash JSFL 中的标准对象 - 可能会提出单独的问题以上是关于在 Flash CS5 中将多个形状和组转换为影片剪辑/符号的主要内容,如果未能解决你的问题,请参考以下文章
在 Adobe Flash Cs5 上滚动影片剪辑时转到网页和手形光标 [关闭]
如何从 Flash 中的 MovieClips 中获取多边形?
JSFL:如何在 Adobe Flash CS5 中访问 Motion Tween 关键帧?