您的位置:首页 > 大数据 > 人工智能

用Adobe AIR制作TexturePacker打包生成图片的切图工具

2015-03-26 20:45 776 查看

1.图片导入



一些代码片段,仅供参考,不能直接运行,有兴趣可以下载源码查看

private var _file:File;
private var _imageLoader:Loader;

_file = new File(File.desktopDirectory.nativePath);
_file.addEventListener(Event.COMPLETE, OnFileCtrlEvent);
_file.addEventListener(Event.SELECT, OnFileCtrlEvent);
_file.addEventListener(Event.CANCEL, OnFileCtrlEvent);
_imageLoader = new Loader();
_imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, LoadImageComplete);

protected function OnFileCtrlEvent(event:Event):void
{
switch (event.type)
{
case Event.COMPLETE:
//读取文件完成
_imageLoader.loadBytes(_file.data);
break;
case Event.SELECT:
//这里开始读取文件
_file.load();
break;
case Event.CANCEL:
//取消操作
break;
}
}
private function onLoadFileClick():void
{
_file.browseForOpen("请选择需要导入的文件", [filter]);
}
private function LoadImageComplete(event:Event):void
{
//这里已经拿到了图片文件的BitmapData
var sourceBtm:BitmapData = Bitmap(_imageLoader.content).bitmapData;
}


2.PNG图片的显示



使用的是Flex自带的Image控件,因为考虑到图片有可能大于或小于图片的显示区域,所以当图片大于显示区域时则显示滚动条,当图片小于显示区域时则将图片居中,而且或裁减掉没有包含像素点的图片区域,显示可以更美观

3.图片导出

一些代码片段,仅供参考,不能直接运行,有兴趣可以下载源码查看

var bmp:BitmapData = new BitmapData("图片宽度", "图片高度", true, 0x00);
bmp.draw(sp);
var bytes:ByteArray = PNGEncoder.encode(bmp);
var path:String = "导出的路径";
var file:File = new File(path);
var fs:FileStream = new FileStream();
try
{
fs.open(file, FileMode.WRITE);
fs.writeBytes(bytes);
fs.close();
}
catch (e:Error)
{
trace(e.message);
}


4.单图预览



5.安装文件下载地址

http://download.csdn.net/detail/ai418976280/8536979

6.源码下载地址

http://download.csdn.net/detail/ai418976280/8536993

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  as3 air flex plist