字符转点字符点阵的函数及示例_Flash教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:FLASH里面隐式设置获取的另一种使用方式
假设有这么一个类,里面有author这个属性:classtest{privatevarauthorStr:Stringpublicfunctiontest(){authorStr=fanflash}publicfunctionseta

写程序的时候忽然想到的方法,感觉简单又好用,一个实用函数,所以发出来,下面是这个函数:

function txtToPosArr(dt:String, w:Number, h:Number):Array {
/*
* author: fanflash(www.fanflash.cn)
* date: 2007-5-14
* info: 将文字转为点阵诸存
* -----Parameters-------
* dt: 要转换成字符串的字符
* w: 两点像素点之间的横轴间距
* h: 两点像素点之间的纵轴间距
* note: 假如想增加点的密度,可以把文本字号设置大些
*/
//检查参数的可用性
w = (w != undefined) ? w : 0;
h = (h != undefined) ? h : 0;
var t_txt:TextField = _root.createTextField("txtToPosTxt", _root.getNextHighestDepth(), -500, -500, 100, 100);
//设置文本
t_txt.autoSize = true;
t_txt.multiline = false;
t_txt.wordWrap = false;
t_txt.selectable = false;
t_txt.text = dt;
t_txt._visible = false;
//生成图片数据
var txtBmp:flash.display.BitmapData = new flash.display.BitmapData(t_txt._width, t_txt._height, false, 0xffffff);
txtBmp.draw(t_txt);
//创建文字数组
var t_arr:Array = new Array();
var pix:Number;
for (var y = 0; y<t_txt._height; y ) {
for (var x = 0; x<t_txt._width; x ) {
if (txtBmp.getPixel(x, y) != 0xffffff) {
t_arr.push({x:x x*w, y:y y*h});
}
}
}
//删除创建的文字
t_txt.removeTextField();
txtBmp.dispose();
return t_arr;
}

分享:Flash AS代码技巧:去除注释的函数
函数如下://去除注释及尾部的空格,www.fanflash.cnprivatefunctiondeleteComment(dt:String):String{varmark:String=’varnewStr:String;//去除注释

/所属分类:Flash教程/更新时间:2008-03-05
相关Flash教程