Flash生成文字的点阵图

时间:2008-03-11 08:56:16  来源:Roading's blog  作者:Roading  【背景色 杏仁黄 秋叶褐 胭脂红 芥末绿 天蓝 雪青 灰 银河白

  根据输入的内容,利用bitmap的象素值判断文字所占用的区域,生成对应的点阵图...

代码如下:

///bitmap的高和宽
var b = 200;
var b2 = 550;
//区域大小
var size = 4;
//
var s:Shape = new Shape();
s.y = b;
addChild(s);
//
cau(null);
stage.focus = t;
//
t.addEventListener(’change’,cau);
//计算并绘制
function cau(e) {
 var bmd:BitmapData = new BitmapData(b2,b);
 bmd.draw(root);
 s.graphics.clear();
 for (var i=0; i<b2; i+=2*size) {
  for (var j=0; j<b; j+=2*size) {
   if (isB(i,j,bmd)) {
    s.graphics.beginFill(int(Math.random()*0xffff00),1);
    s.graphics.drawCircle(i,j,size/2);
    s.graphics.endFill();
   }
  }
 }
}
//计算当前区域是否需要画点,条件是在size*size的区域内有5个象素不是空白
function isB(a,b,bmd)
{
 var c = 0;
 for(var i=0;i<size;i++)
 for (var j=0; j<size; j++)
 {
  if(bmd.getPixel(a+i,b+j)==0)c++;
 }
 if(c>5)return true;
 return false;
}

///

源文件(flash cs3格式): 点阵图.rar


文章评论

共有 0位网翼网友发表了评论 查看完整内容