textField的图文混排(1)
作者:aaron 日期:2009-01-09
一直以来FLASH的图文混排都是讨论的焦点,AS3的诞生给图文混排带来了最大的控制空间,它能够做到精确的控制文本了,但是对图文混排还是有点弱,特别是HTML文本,功能差好多。
这一问题直到flash10只才得到提升,Flash CS4 的最新text API有相关的功能,可以使用更高级的文本控制功能,CS4 做这个东西已不是难题。
我转一个 "圆号手" 朋友做的图文混排思路 用CS3做的

var arr:Array=[];//存表情替换符的位置
var face:Array=[];//存表情编号
var pos:Array=[];//存表情应该显示的位置
while(1)
{
arr.push(str.search(/#[0-9][0-9]/));
if(arr[arr.length-1]!=-1)
{
face.push(str.substr(arr[arr.length-1]+1,2));
pos.push(txt.getCharBoundaries (arr[arr.length-1]));
str=str.replace(/#[0-9][0-9]/," ");
}
else
{
txt.htmlText=string.replace(/#[0-9][0-9]/g," ")
arr.pop();
break;
}
}
用的时候 :var string="我日你个#01TextField我
用htmlText两个麻烦一个是图片不能放中间,一个是把gif当成静态显示
直接做了一个跟textField一样大的容器,专门addChild表情
他是用两层做的,也就是文字和图片分开的,分别控制坐标,个人觉得不是很好,为样很麻烦,不好控制
最麻烦的就是滚动后的定位,还有其它问题很多。
过几天我想试着做一个,再来更新这个帖,先在这留个脚印!
这一问题直到flash10只才得到提升,Flash CS4 的最新text API有相关的功能,可以使用更高级的文本控制功能,CS4 做这个东西已不是难题。
我转一个 "圆号手" 朋友做的图文混排思路 用CS3做的

var arr:Array=[];//存表情替换符的位置
var face:Array=[];//存表情编号
var pos:Array=[];//存表情应该显示的位置
while(1)
{
arr.push(str.search(/#[0-9][0-9]/));
if(arr[arr.length-1]!=-1)
{
face.push(str.substr(arr[arr.length-1]+1,2));
pos.push(txt.getCharBoundaries (arr[arr.length-1]));
str=str.replace(/#[0-9][0-9]/," ");
}
else
{
txt.htmlText=string.replace(/#[0-9][0-9]/g," ")
arr.pop();
break;
}
}
用的时候 :var string="我日你个#01TextField我
用htmlText两个麻烦一个是图片不能放中间,一个是把gif当成静态显示
直接做了一个跟textField一样大的容器,专门addChild表情
他是用两层做的,也就是文字和图片分开的,分别控制坐标,个人觉得不是很好,为样很麻烦,不好控制
最麻烦的就是滚动后的定位,还有其它问题很多。
过几天我想试着做一个,再来更新这个帖,先在这留个脚印!
评论: 2 | 引用: 0 | 查看次数: 1847
回复
]呢?怎么没下文了?
赶快给我更新呀.啊啊啊.冷风
发表评论
上一篇
下一篇


文章来自:
Tags: 




