AS3前端的一些开源的类和引擎收集
CASAlib 类库
一个非常有用的As3的工具类库。
NpContextMenu 类
封装了一些方法,方便操作Flash Player的右键菜单。
一些方法:
addMenuItem() 添加菜单项 removeMenuItem() 删除菜单项 hideMenuItem() 隐藏菜单项 showMenuItem() 显示菜单项
如果想对SWF中的动态文本应用非系统的字体,方法当然是在本身的SWF中嵌入相应的字体,另外一种方法是把字体嵌入到另外的SWF中,当需要对应的字体时,把这个SWF载入,并引用相应的字体。FontLoader是一个字体载入类,它帮助你实现这个过程。
用法,假设把字体编译在fonts.swf中:
var _loader:FontLoader = new FontLoader(); _loader.load( new URLRequest( 'fonts.swf') );
载入完成后,可以引用字体:
var fonts = _loader.fonts;var tf:TextFormat = new TextFormat(fonts[0].fontName, 20);
swfupload是js+Flash的类库,借此实现flash上传获取进度,也实现了页面无需重载的类似ajax的效果。
用法,引入js文件:
<script src="http://www.swfupload.org/swfupload.js" type="text/javascript"></script>
创建SWFUpload对象,指定swf,由swf通过FileReference类调出上传对话框,接下来就交给js了。
var swfu = new SWFUpload({ upload_url : "http://www.swfupload.org/upload.php", flash_url : "http://www.swfupload.org/swfupload.swf", file_size_limit : "200 MB", upload_start_handler : uploadStartEventHandler, upload_success_handler : uploadSuccessEventHandler });
BulkLoader提供简单的载入函数,不管要载入的是xml、swf还是声音文件,都只使用同一接口。功能强大,十分推荐。
用法,载入xml文件:
var bulkLoader:BulkLoader = new BulkLoader('main loading');
bulkLoader.add('my_xml_file.xml');
bulkLoader.start();
引用前面载入的资源:
var myXML:XML = BulkLoader.getLoader("main loading").getXML("my_xml_file.xml");
TransformTool让你轻松实现对DisplayObject的旋转、缩放功能。使用起来也超简单。
用法:
var tool:TransformTool = new TransformTool(); addChild(tool); tool.target = mc;
Layout是个AS3的布局类。例如你要实现一个布局:让一个mc,不管舞台大小如何调整,位置始终保持在舞台的右上角。
用法举例,让mc始终保持在舞台的右上角:
var stageLayout:Layout = new Layout(stage); var layout:Layout = new Layout(mc, true); layout.top = 0; layout.left = 0; stageLayout.addChild(layout);
ColorMatrix可以方便你调节显示对象的饱和度、色调、对比度、亮度。
用法:
var cm:ColorMatrix = new ColorMatrix(); cm.adjustColor(brightnessValue, contrastValue, saturationValue, hueValue); clip.filters = [new ColorMatrixFilter(cm)];
创建显示对象的“像素化”位图。
用法:
var myMoz:Mosaic = new Mosaic(yourDisplayObj isplayObject, pixelSize:uint, useCache:Boolean);
或者
var myMoz:Mosaic = new Mosaic(yourDisplayObj); myMoz.pixelSize = 10; myMoz.render();
Object Pool 类
flash player中有两个开销比较大的操作:对象的创建(object creation)和垃圾回收(garbage collection)。如果我们把不需的对象存放到一个对象池,当需要同类型的对象时直接从对象池里面获取。这样可以减少“对象的创建”,垃圾回收机制对象池里也不会工作,从而减少开销。
用法:
从ObjectPool中获取一个SomeClass的实例:
var obj:SomeClass = ObjectPool.getObject( SomeClass );
当你不需要一个对象,把它存进对象池中:
ObjectPool.disposeObject( obj );
文章由AS3前端整理于网络,AS3前端只于阅读浏览,对于本文AS3前端将不承担任何责任。转载请注明:http://as3.aa-a.net/?p=405
Every one acknowledges that men’s life is high priced, nevertheless some people require money for different issues and not every person gets big sums cash. So to receive fast personal loans or just commercial loan should be a right solution.