加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

利用JSFL制作swf素材包

发布时间:2020-12-15 06:15:21 所属栏目:百科 来源:网络整理
导读:基本上所有flash IDE能做的操作都可以通过JSFL做出。JSFL使用起来很简单,而且调试很方便。IDE里面的历史面板可以把你每一步操作使用的JSFL源码都告诉你。 document.selectAll() 选择舞台上的所有项目。此方法等效于按 Control+A (Windows) 或 Command+A (Ma
基本上所有flash IDE能做的操作都可以通过JSFL做出。JSFL使用起来很简单,而且调试很方便。IDE里面的历史面板可以把你每一步操作使用的JSFL源码都告诉你。 document.selectAll() 选择舞台上的所有项目。此方法等效于按 Control+A (Windows) 或 Command+A (Macintosh),也等效于选择”编辑”>”全选”。 示例 下面的示例选择用户当前可见的所有内容: fl.getDocumentDOM().selectAll(); document.selection 属性;文档中的所选对象的数组。如果未选择任何内容,则返回一个长度为零的数组。如果未打开任何文档,则返回 1 null 。 document.deleteSelection() 方法;在舞台上删除当前所选内容。如果未选择任何内容,则显示一条错误消息。 示例 下面的示例删除文档中的当前所选内容: fl.getDocumentDOM().deleteSelection(); document.library 只读属性;文档的 library 对象。 library 对象表示”库”面板。它是 Document 对象(参阅 document.library)的属性,可以使用 1 fl.getDocumentDOM().library 访问。 library 对象包含不同类型(包括元件、位图、声音和视频)的项目的数组。 library 对象的方法摘要 library 对象具有以下方法: 方法 描述 library.addItemToDocument() 将当前项目或指定的项目添加到舞台的指定位置。 library.addNewItem() 创建”库”面板中指定类型的新项目并将新项目设置为当前选择的项目。 library.deleteItem() 从”库”面板中删除当前项目或指定项目。 library.duplicateItem() 复制当前选择或指定的项目。 library.editItem() 在”编辑”模式下打开当前选择或指定的项目。 library.expandFolder() 展开或折叠库中当前选择或指定的文件夹。 library.findItemIndex() 返回库项目的索引值(从零开始)。 library.getItemProperty() 获取所选项目的属性。 library.getItemType() 获取当前由库路径选择或指定的对象的类型。 library.getSelectedItems() 获取库中所有当前选择项目的数组。 library.importEmbeddedSWF() 将 SWF 文件作为经过编译的剪辑导入库中。 library.itemExists() 检查指定的项目是否存在于库中。 library.moveToFolder() 将当前选择或指定的库项目移动到指定的文件夹。 library.newFolder() 在当前选择的文件夹中,使用指定的名称创建一个新文件夹,如果没有提供 folderName 参数则使用默认名称 (“untitled folder #”)。 library.renameItem() 在”库”面板中重命名当前选择的库项目。 library.selectAll() 选择或取消选择库中的所有项目。 library.selectItem() 选择指定的库项目。 library.selectNone() 取消选择所有库项目。 library.setItemProperty() 设置选择的所有库项目(忽略文件夹)的属性。 library.updateItem() 更新指定的项目。 library 对象的属性摘要 library 对象具有以下属性: 属性 描述 library.items 库中项目对象的数组 示例 下面的示例获取当前获得焦点的文档的库: var myCurrentLib = fl.getDocumentDOM().library; document.convertToSymbol() document.convertToSymbol(type,name,registrationPoint) 参数 type 一个字符串,它指定要创建的元件的类型。可接受值为 “movie clip”、”button” 和 “graphic”。 name 一个字符串,它指定新元件的名称,名称必须是唯一的。提交一个空字符串可以使此方法创建一个唯一的元件名称。 registration point 指定表示元件的 0,0 位置的点。可接受的值为:”top left”、”top center”、”top right”、”center left”、”center”、”center right”、”bottom left”、”bottom center” 和 “bottom right”。 返回 新建元件的一个对象,如果无法创建该元件,则返回 null。 说明 方法;将所选舞台项目转换为一个新元件。有关为元件定义链接和共享资源属性的信息,请参阅 Item 对象 一个使用JSFL来处理图素的例子 1.使用flash IDE或任何文本编辑器编写代码如下:  fl.getDocumentDOM().selectAll();//选中场景中所有的位图   if(fl.getDocumentDOM().selection.length>0) //   {   fl.getDocumentDOM().deleteSelection();//删除所有位图   }   var lib=fl.getDocumentDOM().library;//取得库   var libLength=lib.items.length;//库元素的长度   var bitmapArr=new Array();//库里面没有处理的位图   for(var i=0;i<libLength;i++)   {   //没有在目录中的位图则表示没有处理   if((lib.items[i].itemType==”bitmap”)&&((lib.items[i].name).indexOf(“/”)==-1)) //name中不带/即不在文件目录(文件夹)中   {    bitmapArr.push(lib.items[i].name);   }   }   if(bitmapArr.length>0)   {   //创建目录   for(var i=0;i<bitmapArr.length;i++)   {    var name=bitmapArr[i];//位图的完整名称    var nameArr=bitmapArr[i].split(“_”);//位图名称的拆分数组    var folder=nameArr[0];//目录名称    var iconName=nameArr[1];//图标名称    var code=nameArr[2].split(“.”)[0];//图标编码    lib.newFolder(folder); //新建文件夹    lib.selectItem(name);//选中位图    lib.addItemToDocument({x:0,y:0});//添加到场景    fl.getDocumentDOM().selectAll(); //选中场景中位图    var mcName=iconName+”_”+code;    //转换为mc    fl.getDocumentDOM().convertToSymbol(“movie clip”,mcName,”top left”) ;    if (lib.getItemProperty(‘linkageImportForRS’) == true) {    lib.setItemProperty(‘linkageImportForRS’,false); //item.linkageImportForRS 一个布尔值。如果为 true,则为运行时共享导入该项目。    }    lib.setItemProperty(‘linkageExportForAS’,true);//item.linkageExportForAS 一个布尔值。如果为 true,则为 ActionScript 导出该项目。    lib.setItemProperty(‘linkageExportForRS’,false); //item.linkageExportForRS 一个布尔值。如果为 true,则为运行时共享导出该项目。    lib.setItemProperty(‘linkageExportInFirstFrame’,true); //item.linkageExportInFirstFrame 一个布尔值。如果为 true,则在第一帧导出该项目。    lib.setItemProperty(‘linkageClassName’,code); //item.linkageBaseClass 一个字符串,它指定将与元件关联的 ActionScriptt 3.0 类。 ? //item.linkageClassName 一个字符串,它指定将与元件关联的 ActionScript 2.0 类。    lib.setItemProperty(’scalingGrid’,false);    fl.getDocumentDOM().selectAll();//选中场景中所有的位图    fl.getDocumentDOM().deleteSelection();//删除所有位图    var bitmapFolder=folder+”/图素”;    var mcFolder=folder+”/导出类”    lib.newFolder(bitmapFolder);    lib.newFolder(mcFolder);    lib.moveToFolder(mcFolder,mcName); //移动到导出类文件夹    lib.moveToFolder(bitmapFolder,name); //移动到图素文件夹   }   }   else   {   alert(“没有需要处理的位图!”);   } 2.保存JSFL到C:/Documents and Settings/用户名(你机子的名字)/Local Settings/Application Data/Adobe/Flash CS3/zh_cn/Configuration 里面 3.使用commands——>run command… 4.选择JSFL文件,打开,就可以执行了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读