免费教程_免费网赚教程_破解版软件-寂涯网络学习基地

当前位置: 主页 > 网站相关 > 网站编程 > 通过Flash+JavaScript+API来解析fla文件(4)

通过Flash+JavaScript+API来解析fla文件(4)

时间:2012-05-24 12:59来源:未知 整理:寂涯网络 点击:


LeVef++:
,filterGroup[k]);
。text。)Level一一;
}
e。):Level一一:
}
}
function pushFrames(flag,k,Level,singleFrames)//关键帧
腑象属性读取函数 {
var.-0:
st rIisPush(LeveI,k+1):
st rIisPush(LeveI+1,。name。):
strlisPush(Level+2,singleFrames.name);
strltsPush(Levej+1,‘soundName‘):
strlisPush(Level+2.singleFrames.soundName);
||.··
if(singleFrames.tweenType!='none。)腑h间类型
{
strlisPush(Level+1.。motionTweenOrientToPath‘):
st州sPush《LeveI+2,singleFrames.motionTweenOrientToPath);
strIisPush(LeveI+1.”motionTweenRotate‘):
strIisPush(LeveI+2,singleFrames.motionTweenRotate);
l|I‘·
)
elementGroup=singleFrames.elements;
st rIisPush(LeveI+1,。elementCount‘):
st rIisPush(Level+2.elementGroup.1ength);
Level++;
strlisPush(Level,"elementGroup。):
while I(.<eIementGroup.1ength)&&《i<=1 0》),/避免
多元素检测导致程序变慢
{
Level++;
pushElement(flag.Level,elementGroup[i],k):
Level一一:
i++:
}
}
function pushLayer(flag.Level,singleLayer)//图层对象属性读取函数
{
var k=0:
strlisPush(Level,singleLayer.name);
st rIisPush(Level+1,。layerType。);
strlisPush(Level+2.singleLayer.1ayerType);
strIisPush(Level+1,。color。):
strIisPush{Level+2,singleLayer.colod;
frameGroup=singleLayer.frames;
Level++;
strlisPush(Level,'frameSeries。):
while(k<frameGroup.1ength)
{
Level++;
pushFrames(flag,k,Level,frameGroup[k]);
k=k+frameGroup[k].duration;
Level--;
l
l
//主程序,获取场景
strlisPush(Level,'scenes‘):
for(t=0;t<timeLines.1ength;t++}
{
Level++;
tl=timeLines[t];
dec.editScene(t)
strlisPush(Level,t1.name);
Level++;
strlisPush(Level,"frameCount');
strIisPush《Level+1,t1.frameCount);
strlisPushlLeveI,'layerCount。):
strlisPush(Level+l,t1.1ayerCount);
layerGroup=t1.1ayers;
strlisPush(Level,"layers’):
for(j=0;j<t1.1ayerCount;j++)
{
Level++;
pushLayer(false,Level,layerGroup[j]);
Level一一:
}
Level一一:
Level-一:
}
//获取元件摩
strlisPush(Level,'lib。):
for(i=0;i<itemArray.1ength;i++)
{
Level++;
strlisPush(LeveI,itemArray[i],name);
strIisPush(LeveI+1。。itemType。):
strlisPush(Level+2.itemArray[i].itemType):
if(itemArray[i].itemTyDe==。video。l//{蜴l频
{
strlisPush(Level+1.。videoType。):
strIisPush(LeveI+2,itemArray[i].videoType);
strlisPush(LeveI+l,。sourceFilePath。l:
strlisPush(Level+2.itemArray[i].sourceFiIePathJ:
1
.f(itemArray【i].itemType==。movie clip。|I itemArray[i】
itemType==‘graphic。lI itemArray[i].itemType==。button。)
//影片剪辑、图形、按钮
i
tl=itemArray[i].timeline;
layerGroup=t1.1ayers;
strJisPush《LeveI+1,‘layerCount‘):
strlisPush(Level+2,t1.1ayerCount);
strllsPush(LeveI十1,‘frameCount。);
st rIisPush(LeveI+2,t1.frameCount);
Level++;
st rIisPush(LeveI,'layers。):
for(j=0;j<t1.1ayerCount;j++)
{
Level++;
pushLayer(true,Level,layerGroup[j]);
Level一一:
}
Level一一:
}
Level一一:
}
strlisPush(O,"end。):
FLfile write(。file:///C:/fltest txt",strlis);
f1.closeDocument('file:///C:/check fb',false)
7结语
既演示了在Flash中利用Flash JavaScript读取fla文档的方
法和程序,也描述了外部程序利用FLash JavaScfipt的机制。程
序在DelphiT+Flash8环境下通过。不过需要指出的是+外部程
序代码在等待flash.exe执行jsn完毕并释放txt控制的过程中
需要完荐,嘲为如果jsfl的代码出错,或者待解析的fla文件不
存在.那么fltest.txt就不会生成,外部程序就会陷入一个死循
环。读者在自行编程中需要考虑一个延时强制结束的问题。
Flash JavaScfipt的初衷是为了简化Flash动画创作.通过

本页地址 http://www.jybase.net/wangzhanbiancheng/20120524933.html

百度搜索更多

谷歌搜索更多

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------

评价:
昵称: 验证码:点击我更换图片
推荐内容
赞助商
赞助商


关于本站免责声明视频更新google百度地图视频地图RRS订阅

如有什么问题请在本站留言,或发邮件到 hxt167#foxmail.com