日期:2014-05-16  浏览次数:20470 次

JSFL批量处理图片
From:http://www.colorhook.com/blog/?tag=jsfl

今天碰到这样一个情况,一个Flash文档中使用了100多张位图,库中的位图属性全部是无损(lossless)PNG/GIF,导致输出文档占 用空间很大,要是把位图全部变成JPEG格式,再设置输出时的压缩质量,就可以极大的减小尺寸。

但是库中总共有100多张图片,要是一张一张地将它设置成使用JPEG格式,并且勾选使用文档默认质量,那也要重复很多次,不符合我懒惰的本性。加 之这些操作都是相同的行为,OOP思想倡导我们要封装变化点,于是我想到了JSFL。

看看JSFL的如何施展它的魔力:

//封装成一个函数function executeBitmapConvert(document){ //获得库的引用 var library=document.library; //获得库中元素数组 var items=library.items; //获得库中元素的数量 var itemsCount=items.length;  for(var i=0;i< itemsCount;i++){  //如果元素是位图,则设置其压缩属性  if(items[i].itemType="bitmap"){   //使用photo(JPEG)压缩   items[i].compressionType="photo";   //使用文档的压缩质量,可在导出时设置   items[i].useImportedJPEGQulity=true;  } } }//执行函数executeBitmapConvert(document);瞬间JSFL就解决了我的问题,要是用鼠标来点不知道要点到什么时候啊。呵呵!在某些情况下,使用JSFL扩展确实让人省了不少事啊!