//单个资源文件的打包
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
打开“打开文件”或“保存文件”系统对话框,允许用户指定要打开或保存的文件。 | |
显示“浏览文件夹”对话框,允许用户选择文件夹。 |
FLfile.listFolder()
document.importFile()
document.library
|
library.items
item.linkageExportForAS
描述属性;一个布尔值。如果此属性为 true,则为 ActionScript 导出该项。也可以将 item.linkageExportForRS 和 item.linkageExportInFirstFrame 属性设置为 true。 如果将此属性设置为 true,则必须将 item.linkageImportForRS 属性设置为 false。此外,还必须指定标识符 (item.linkageIdentifier) 和 URL (item.linkageURL)。 |
item.linkageExportInFirstFrame
描述属性;一个布尔值。如果为 true,则项目在第一帧中导出;如果为 false,则项目在第一个实例的帧中导出。如果该项目没有出现在舞台上,则表明其未被导出。 仅当 item.linkageExportForAS 和/或 item.linkageExportForRS 设置为 true 时,此属性才能设置为 true。 |
item.linkageBaseClass
描述属性;一个字符串,它指定将与元件关联的 ActionScript 3.0 类。此处指定的值将显示在创作环境的“链接”对话框以及其他包括“链接”对话框控件的对话框(例如元件的“属性”对话框)中。(若要为 ActionScript 2.0 类指定此值,请使用 item.linkageClassName。) 如果基类是元件类型的默认值(例如,对于影片剪辑为“flash.display.MovieClip”,对于按钮为“flash.display.SimpleButton”等),则此属性为空字符串 ("")。同样,若要使某个项成为默认的基类,请将该值设置为空字符串。 设置该值时,“链接”对话框不会执行任何既定的检查,因此如果 Flash 无法将基类设置为指定值,将不会引发任何错误。例如,在“链接”对话框中设置此值会强制进行检查,以确保可以在 FLA 文件的类路径中找到基类。这确保了在“发布设置”对话框的“Flash”选项卡中可以选择 ActionScript 3.0,依此类推。在脚本中设置该属性时,不会执行这些检查。 |
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()
描述方法;检索当前活动文档(FLA 文件)的 DOM(Document 对象)。如果有一个或多个文档是打开的,但有一个文档当前并不具有焦点(例如,如果 JSFL 文件具有焦点),则检索最近的活动文档的 DOM。 |
document.exportPublishProfileString()
用法document.exportPublishProfileString( [profileName] ) 参数
返回一个 XML 字符串。 描述方法:返回一个字符串,它以 XML 格式表示指定的配置文件。如果不为 profileName 传递值,则导出当前配置文件。 |
document.importPublishProfileString()
用法document.importPublishProfileString(xmlString) 参数
返回一个布尔值:如果成功导入该字符串,则为 true;否则为 false。 描述方法;导入一个表示发布配置文件的 XML 字符串,并将其设置为当前配置文件。若要生成要导入的 XML 字符串,请在使用此方法之前使用 document.exportPublishProfileString()。 |
fl.saveDocument()
参数
|