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圖片!");
}