JSFL导出XML的方式为,先将要保存的XML输出在控制台,然后再通过 outputPanel对象保存。大概为:
fl.trace("<?xml version=\"1.0\" encoding=\"utf-8\"?>"); fl.trace("<fliterList imageName=\""+imageName+"\">"); fl.trace("<item colorID=\""+element.name+"\">"); var filters=element.filters; if(filters!=null) { for(var i=0;i<filters.length;i++) { var node="<"+filters[i].name+" "; for (var prop in filters[i]) { node+=prop+"=\""+filters[i][prop]+"\" "; } node+="/>"; fl.trace(node); } } fl.trace("</item>"); fl.trace("</fliterList>"); var fileURL = fl.browseForFileURL("save", "save file"); fl.outputPanel.save(fileURL);( 详细脚本请见附件)
for循环为输出对象的滤镜名及所有参数。
美术同学只需要框选加完滤镜的元件—执行脚本—选择存储目录保存即可。保存成功之后我们将得到配置文件如下:
<?xml version="1.0" encoding="utf-8"?> <fliterList imageName="bomd"> <item colorID="green"> <adjustColorFilter name="adjustColorFilter" enabled="true" brightness="0" contrast="0" saturation="0" hue="-84" /> </item> <item colorID="red"> <adjustColorFilter name="adjustColorFilter" enabled="true" brightness="0" contrast="0" saturation="0" hue="140" /> </item> <item colorID="blue"> </item> </fliterList>
imageName:需要添加滤镜的源资源名。
item:单个滤镜结果对象,colorID为其名称。此处我们有三个结果,两个需要添加滤镜效果,一个为默认效果。
adjustColorFilter:滤镜效果—调整颜色。
程序读取配置后通过String提供的 ColorMatrixFilter对象可以完成对资源的颜色调整。