jsfl語法分析

//單個資源文件的打包
var qualityValue=80;
var log="";
var resourcePath=fl.browseForFolderURL("請選擇素材路徑:");

var sourcePath="file:///D|/img/";

function main(){
	//createSwf(sourcePath);
	createSwf(resourcePath);
}

function clearFla(){
	var fileList=FLfile.listFolder(resourcePath+"/"+"*.fla");
	var fc=fileList.length;
	for(var i=0;i<fc;i++){
		fl.trace(resourcePath+""+fileList[i]+"----"+FLfile.remove(resourcePath+"/"+fileList[i]));
	}
}

function createSwf(currDir){
	var fileList=FLfile.listFolder(currDir+"/*.png","files");
	var frameCount=fileList.length;
	if(frameCount > 0){
		fl.trace(frameCount);
		for(var i=0;i<frameCount;i++){
			var doc=fl.createDocument("timeline");
			var timeline=doc.getTimeline();
			var fileName=currDir+"/"+fileList[i];
			doc.importFile(fileName,true);
			
			var lib=doc.library;
			
			var item=lib.items[0];
			item.linkageExportForAS=true;
			item.linkageExportInFirstFrame=true;
			item.linkageBaseClass="";
			item.linkageClassName=item.name.substr(0,item.name.lastIndexOf("."));
			item.compressionType="photo";
			item.quality=qualityValue;
			
			var profileXML=fl.getDocumentDOM().exportPublishProfileString('Default');
			fl.trace(profileXML);
			var newProfileXML = profileXML.replace("<html>1</html>","<html>0</html>");
			fl.getDocumentDOM().importPublishProfileString(newProfileXML);
			
			fl.saveDocument(doc,currDir+"/"+item.linkageClassName+".fla");
			
			doc.publish();
			doc.close();
		}
		clearFla();
		alert("處理完成!");
	}
}
main();

附上jsfl的api:http://help.adobe.com/zh_CN/flash/cs/extend/index.html

fl.browseForFileURL()

打開“打開文件”或“保存文件”系統對話框,允許用戶指定要打開或保存的文件。

fl.browseForFolderURL()

顯示“瀏覽文件夾”對話框,允許用戶選擇文件夾。

FLfile.listFolder()

用法

FLfile.listFolder(folderURI [, filesOrDirectories])

參數

folderURI 
一個字符串,表示爲 file:/// URI,它指定要檢索其內容的文件夾。您可以將通配符掩碼作爲 folderURI 的一部分提供。有效的通配符是 *(匹配一個或多個字符)和 ?(匹配單個字符)。

filesOrDirectories 
一個可選字符串,它指定是隻返回文件名,還是隻返回文件夾(目錄)名稱。如果省略,則同時返回文件名和文件夾名稱。可接受值爲 "files" 和 "directories"

返回

表示文件夾內容的字符串的數組。如果文件夾不存在,或沒有與指定條件相匹配的文件或文件夾,則返回空數組。

描述

方法;返回表示文件夾內容的字符串的數組。

fl.createDocument()


用法

fl.createDocument([docType])

參數

docType 
一個字符串,它指定要創建的文檔的類型。唯一可接受的值是 timeline。默認值爲 "timeline",與選擇“文件”>“新建”>“Flash 文件”(ActionScript 3.0) 效果相同。此參數是可選的。

返回

如果方法成功執行,則返回新建文檔的 Document 對象。如果發生錯誤,則返回值爲 undefined

描述

方法;打開並選擇新文檔。用於表示大小、分辨率和顏色的值與當前的默認值相同。


document.getTimeline()

用法

document.getTimeline()

參數

無。

返回

當前 Timeline 對象。

描述

方法;檢索文檔中的當前 Timeline 對象。當前時間軸可以是當前場景、正在編輯的當前元件或當前屏幕。



document.importFile()

用法

document.importFile(fileURI [, importToLibrary [, showDialog [, showImporterUI ]]])

參數

fileURI 
一個字符串,表示爲 file:/// URI,它指定要導入的文件的路徑。

importToLibrary 
一個布爾值,它指定是僅將文件導入文檔庫 (true),還是同時在舞臺上放置一個副本 (false)。默認值爲 false

showDialog 
一個布爾值,用於指定是否顯示“導入”對話框。指定爲 true 將顯示“導入”對話框。如果指定爲 false,該功能將使用“首選參數”對話框中的設置導入文件。默認值是 true

showImporterUI 
一個布爾值,用於指定是否將錯誤明確顯示出來(例如,使用“庫衝突”對話框)。默認值爲 false

返回

無。

描述

方法;將文件導入文檔。此方法執行與“導入到庫”或“導入到舞臺”菜單命令相同的操作。若要導入發佈配置文件,請使用 document.importPublishProfile()

document.library

用法

document.library

描述

只讀屬性;文檔的 library 對象

示例

下面的示例獲取當前獲得焦點的文檔的庫:

var myCurrentLib = fl.getDocumentDOM().library;

library.items

用法

library.items

描述

屬性;庫中項目對象的數組。

item.linkageExportForAS


用法

item.linkageExportForAS

描述

屬性;一個布爾值。如果此屬性爲 true,則爲 ActionScript 導出該項。也可以將 item.linkageExportForRS 和 item.linkageExportInFirstFrame 屬性設置爲 true

如果將此屬性設置爲 true,則必須將 item.linkageImportForRS 屬性設置爲 false。此外,還必須指定標識符 (item.linkageIdentifier) 和 URL (item.linkageURL)。

item.linkageExportInFirstFrame

用法

item.linkageExportInFirstFrame

描述

屬性;一個布爾值。如果爲 true,則項目在第一幀中導出;如果爲 false,則項目在第一個實例的幀中導出。如果該項目沒有出現在舞臺上,則表明其未被導出。

僅當 item.linkageExportForAS 和/或 item.linkageExportForRS 設置爲 true 時,此屬性才能設置爲 true

item.linkageBaseClass

用法

item.linkageBaseClass

描述

屬性;一個字符串,它指定將與元件關聯的 ActionScript 3.0 類。此處指定的值將顯示在創作環境的“鏈接”對話框以及其他包括“鏈接”對話框控件的對話框(例如元件的“屬性”對話框)中。(若要爲 ActionScript 2.0 類指定此值,請使用 item.linkageClassName。)

如果基類是元件類型的默認值(例如,對於影片剪輯爲“flash.display.MovieClip”,對於按鈕爲“flash.display.SimpleButton”等),則此屬性爲空字符串 ("")。同樣,若要使某個項成爲默認的基類,請將該值設置爲空字符串。

設置該值時,“鏈接”對話框不會執行任何既定的檢查,因此如果 Flash 無法將基類設置爲指定值,將不會引發任何錯誤。例如,在“鏈接”對話框中設置此值會強制進行檢查,以確保可以在 FLA 文件的類路徑中找到基類。這確保了在“發佈設置”對話框的“Flash”選項卡中可以選擇 ActionScript 3.0,依此類推。在腳本中設置該屬性時,不會執行這些檢查。


item.linkageClassName

用法

item.linkageClassName

描述

屬性;一個字符串,它指定將與元件關聯的 ActionScript 2.0 類。(若要爲 ActionScript 3.0 類指定此值,請使用 item.linkageBaseClass。)

若要定義此屬性,item.linkageExportForAS 和/或 item.linkageExportForRS 屬性必須設置爲 true,並且 item.linkageImportForRS 屬性必須設置爲 false

bitmapItem.compressionType

用法

bitmapItem.compressionType

描述

屬性;字符串,用於確定應用於位圖的壓縮類型。可接受的值爲 "photo" 或 "lossless"。如果 bitmapItem.useImportedJPEGQuality 的值是 false,則 "photo" 使用品質 0 到 100 來對應 JPEG;如果 bitmapItem.useImportedJPEGQuality 爲 true,則 "photo" 使用默認的文檔品質值來對應 JPEG。值 "lossless" 對應於 GIF 或 PNG 格式(請參閱 bitmapItem.useImportedJPEGQuality)。

bitmapItem.quality

用法

bitmapItem.quality

描述

屬性;整數,用於指定位圖的品質。若要使用默認文檔品質,則指定爲 -1;否則指定一個 0 到 100 範圍內的整數。該屬性僅對 JPEG 壓縮可用。

fl.getDocumentDOM()

用法

fl.getDocumentDOM()

參數

無。

返回

一個文檔對象,如果不存在打開的文檔,則返回 null

描述

方法;檢索當前活動文檔(FLA 文件)的 DOM(Document 對象)。如果有一個或多個文檔是打開的,但有一個文檔當前並不具有焦點(例如,如果 JSFL 文件具有焦點),則檢索最近的活動文檔的 DOM。

document.exportPublishProfileString()

用法

document.exportPublishProfileString( [profileName] )

參數

profileName 
一個字符串,它指定要導出到 XML 字符串的配置文件的名稱。此參數是可選的。

返回

一個 XML 字符串。

描述

方法:返回一個字符串,它以 XML 格式表示指定的配置文件。如果不爲 profileName 傳遞值,則導出當前配置文件。

document.importPublishProfileString()

用法

document.importPublishProfileString(xmlString)

參數

xmlString 
一個字符串,其中包含要導入爲當前配置文件的 XML 數據。

返回

一個布爾值:如果成功導入該字符串,則爲 true;否則爲 false

描述

方法;導入一個表示發佈配置文件的 XML 字符串,並將其設置爲當前配置文件。若要生成要導入的 XML 字符串,請在使用此方法之前使用 document.exportPublishProfileString()

fl.saveDocument()

用法

fl.saveDocument(document [, fileURI])

參數

document 
Document 對象,它指定要保存的文檔。如果 document 爲 null,將保存活動文檔。

fileURI 
一個字符串,表示爲 file:/// URI,它指定保存的文檔的名稱。如果參數 fileURI 爲 null 或被省略,將以文檔當前的名稱來保存文檔。此參數是可選的。

返回

布爾值:如果保存操作成功完成,則返回 true;否則返回 false

此方法將保存文件,而無論文件是新的、修改過還是未修改過。

描述

方法;將指定文檔保存爲 FLA 文檔。

document.publish()

用法

document.publish()

參數

無。

返回

無。

描述

方法;按照活動發佈設置(“文件”>“發佈設置”)發佈文檔。此方法等效於選擇“文件”>“發佈”。

document.close()

用法

document.close([bPromptToSaveChanges])

參數

bPromptToSaveChanges 
一個布爾值,如果設置爲 true,且文檔中存在未保存的更改,則此方法使用一個對話框提示用戶。如果 bPromptToSaveChanges 設置爲 false,則不提示用戶保存任何更改過的文檔。默認值爲 true。 此參數是可選的。

返回

無。

描述

方法;關閉指定的文檔。

這裏面涉及到一個生成的xml配置文件,這個相當於flash cs的發佈配置,選中就是1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章