jsfl 替换同名素材
//功能 : 替换同名素材,并且添加同名AS链接 //选择文件夹 var folderURL = fl.browseForFolderURL("请选择文件夹."); //主文件夹中的所有文件 var folderFiles = FLfile.listFolder(folderURL,"files"); //主文件夹中的所有小文件夹 var folderFolders = FLfile.listFolder(folderURL,"directories"); //库中所有项目(包括文件夹内的项目) var itemArray = fl.getDocumentDOM().library.items; //document var doc = fl.getDocumentDOM(); //计数 var num = 0; //循环主文件夹中的所有文件 var m; for(m = 0; m < folderFiles.length; m++) { var fileName = folderFiles[m]; //文件的完整路径 var filePath = folderURL + "/" + fileName; //循环库中所有项目~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~库 for(var n= 0; n < itemArray.length; n++ ) { var itemName = itemArray[n].name; var index = itemName.lastIndexOf("/"); if(index == -1) { if(fileName == itemName) { //AS链接名 var linkageName = itemArray[n].linkageClassName; //导入文件 doc.importFile(filePath, true); doc.library.moveToFolder("", itemName, true); //库项目数组 var arr = fl.getDocumentDOM().library.items; //循环项目数组,找到名字为fileName的文件 for(var k = 0; k<arr.length; k++) { if(arr[k].name == fileName) { //给名字为filename的文件添加AS链接 if (arr[k].linkageImportForRS == true) { arr[k].linkageImportForRS = false; } arr[k].linkageExportForAS = true; arr[k].linkageExportForRS = false; arr[k].linkageExportInFirstFrame = true; arr[k].linkageClassName = linkageName; //替换成功 num++; fl.trace("替换成功,被替换的文件名和AS链接名字是:"); fl.trace(fileName); fl.trace(linkageName); } } } }else { //库中文件夹内的文件名字 itemName2 = itemName.substr(index + 1); if(fileName == itemName2) { //AS链接名 var linkageName = itemArray[n].linkageClassName; //导入文件 doc.importFile(filePath, true); var libFolderName = itemName.substring(0, index); doc.library.moveToFolder(libFolderName, itemName2, true); //库项目数组 var arr2 = fl.getDocumentDOM().library.items; //循环项目数组,找到名字为itemName的文件 for(var p = 0; p<arr2.length; p++) { if(arr2[p].name == itemName) { //给名字为itemName的文件添加AS链接 if (arr2[p].linkageImportForRS == true) { arr2[p].linkageImportForRS = false; } arr2[p].linkageExportForAS = true; arr2[p].linkageExportForRS = false; arr2[p].linkageExportInFirstFrame = true; arr2[p].linkageClassName = linkageName; //添加成功 num++; fl.trace("替换成功,被替换的文件夹/文件名和AS链接名字是:"); fl.trace(itemName); fl.trace(arr2[p].linkageClassName); } } } } } } //共计替换了多少个 fl.trace("共计替换了多少个"); fl.trace(num);
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。