当前位置:编程学习 > JS >>

JSFL_图片转换SWF导出

 

Java代码 

//打开图片目录 

var folder = fl.browseForFolderURL("png图片目录");  

//取的文件列表句柄 

var list = FLfile.listFolder(folder,"files"); 

var doc = null; 

if(list){  

        //循环这个句柄 获得所有的子文件 

 for(var i = 0;i<list.length;i++){ 

  var filename = list[i]; 

  if(filename.toLowerCase().substr(filename.length - 4) == ".png"){ 

   if(doc == null){ 

    //创建一个fla,默认timeline  

    doc = fl.createDocument(); 

    doc.frameRate = 30; 

    doc.width = 100; 

    doc.height = 100; 

    doc.backgroundColor = '#000000'; 

   } 

   //文件导入到flash/舞台/库 

   doc.importFile(folder+"/"+filename,true); 

  }   

 }  

if(doc){ 

 //library只读属性,库面板 

 var lib = doc.library; 

 //在库里面加入一个movie clip 名字叫npc 

 lib.addNewItem("movie clip","npc"); 

 //编辑这个mc 

 lib.editItem("npc"); 

 //得到当前的timeline对象 当前时间轴可以是当前场景、正在编辑的当前元件或当前屏幕 

 var tl = doc.getTimeline(); 

 //将图层设置为选定;同时将指定图层作为当前图层 

 tl.setSelectedLayers(0); 

 //只读;图层对象数组 命名 

 tl.layers[0].name="bitmap"; 

 //计算多少个图片 在给定的帧编号处插入指定数目的帧。 

 var len = lib.items.length-1; 

 tl.insertFrames(len-1); 

 //设置第一针 然后开始写入图片 

 var frameId = 0; 

 //lib.items 项目库中的全部item 

 for(var i = 0;i<lib.items.length;i++){ 

  var item = lib.items[i]; 

  if(item.itemType == "bitmap"){ 

          //一个布尔值,它指定是否允许对位图进行平滑处理 

   item.allowSmoothing = true; 

   //一个字符串,它确定应用于位图的压缩类型 

   item.compressionType = "photo"; 

   //一个整数,用于指定位图的品质 

   item.quality = 70; 

   if(frameId>0){ 

    //convertToBlankKeyframes方法;将当前图层的帧转换为空白关键帧。 

    tl.convertToBlankKeyframes(frameId); 

   } 

   //addItemToDocument方法;将当前项目或指定的项目添加到舞台的指定位置 

   lib.addItemToDocument({x:0, y:0},item.name); 

   //向前推针 

   frameId ++; 

  } 

 } 

 //添加一个新图层 

 //tl.addNewLayer(); 

 //命名为动作层 

 //tl.layers[0].name="actions"; 

 //在第一针和最后一针加入动作 

 //tl.setSelectedFrames([0,len-1,len-1],true); 

 //tl.convertToBlankKeyframes(1); 

 //tl.layers[0].frames[0].actionScript= 

 //"if(this['cyc'] == null){\nthis['cyc'] = false;\nstop();\n}\nif(!this['cyc']){\nstop();\n}"; 

 //找到刚才的mc 给他加上类路径链接 

 //var li = lib.items[lib.findItemIndex("npc")]; 

 //li.linkageExportForAS= true; 

 //li.linkageExportInFirstFrame = true; 

 //li.linkageClassName = "npc"; 

 //导出swf 

 var li = lib.items[lib.findItemIndex("npc")]; 

 alert(li); 

 doc.addItem({x:0,y:0},li); 

 //doc.exportSWF(); 

 //关闭这个文件 

 //doc.close(false);  

}else{ 

 alert("没有指定的png图片!"); 

}  

补充:软件开发 , Java ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,