中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 图形图象 > 网页设计 > Flash
Flash MX 编程深层次应用-初级特效(2)
作者:未知 时间:2005-05-21 12:12 出处:ChinaZ.com 责编:chinaitpower
              摘要:Flash MX 编程深层次应用-初级特效(2)
2.1 文字特效(2)

    

2.文本格式对象

能对文本进行控制的还有文本格式对象。这个对象主要控制的是具体的文本格式,而文本框对象主要控制的是框的格式。文本格式对象的创建方法如下:

new TextFormat([font, [size, [color, [bold, [italic, [underline, [url, [target, [align, [leftMargin, [rightMargin, [indent, [leading]]]]]]]]]]]]])

上面的内容并不是每项都要一一设置的,如果不想设置该项而使用默认值的话,可以直接用逗号跳过,如果某项后面的内容全部都用默认值,则全部可以不写了。下面对这些参数做一些说明:

font

它用一个字符串的形式来描述字体名称,这个名称要与真实字体名称完全相同。对于中文字体,这项内容无法起作用,这也是为什么在图2-3的效果中,中文字体并没有被设置的原因。不知这是不是Flash MXBug

size

它是表示字体的点阵大小。这项值必须设置,否则字的尺寸将为0!字将无法显示。

color

字体的颜色值,一般来说是按0x######的方式进行书写的,比如红色是0xFF0000,黄色是0xFFFF00,默认是黑色。

bold

字体加粗,是一个布尔变量,为true时表示加粗,为false时表示不加粗,默认是false

Italic

字体变斜体,布尔变量,默认为false

underline

文字下划线,布尔变量,默认为false

url

超级链接。如果为空串,则不会有超级链接的功能。

target

目标窗口。这是设置有超级链接时,打开的窗口是自己(_self)、新窗口(_blank)、父亲窗口(_parent),或者是最顶层(_top)。默认值是_self

align

对齐方式。等于left,就是靠左对齐,等于right就是靠右对齐,等于center就是居中对齐。这个属性可以与文本框的autoSize属性进行联合设置。

leftMargin

左边界。它表示第一个文本字符离左边框的距离,用点数来表示,取值范围从0720

rightMargin

右边界。它表示最后的文本字符离右边框的距离,用点数表示,取值范围从0720

Indent

缩进方式。它表示从左边界到第一个字符缩进的整数点数值,取值从–720720

leading

行距。它表示每行字之前的间隔点数,取值范围从–360720

上面的这些参数都是文本格式的属性,都可以通过相应的方式来对它进行设置。当然了,字符的属性不止这些,还有几个很有用的属性函数:

TextFormat.tabStops

它是用来控制按Tab键时所能移动的空格数,默认值是4

TextFormat.blockIndent

定义整个文本块的左边缩进字数。块缩进应用于整个文本块,即文本的所有行。相反,普通缩进 (TextFormat.indent) 只影响各段的第一行。如果该属性为 null,则 TextFormat 对象没有指定块缩进。

TextFormat.bullet

用来控制文本作为列表形式的出现,它是一个布尔变量。如果为true,那么文本前面就会有一个项目符号。如果对一个文本同时使用了数种不同的文本格式,那么不管这个属性是否为true,都不显示项目号。

在实际使用过程中,可以先进行创建,然后再修改某一项或者数项的内容,最后用TextField.setTextFormat (textFormat)来实施相应的文本格式。

它的实施有三种方式:

TextField.setTextFormat (textFormat)
TextField.setTextFormat (index, textFormat)
TextField.setTextFormat (beginIndex, endIndex, textFormat)

这三种实质是差不多的,第一种已经在前面的程序中用到,第二种使用方法是让这个文本串的第“index”个字符使用这里定义的格式,第三种方法就是从“beginIndex”到“endIndex”的字符使用定义的格式。这里的indexbeginIndexendIndex取值范围从0TextField.length–1

在看过这么多属性之后,我们来看看它们对效果可以做哪些变化:

userFonts = TextField.getFontList();

userFonts.sort();

_root.createEmptyMovieClip("fontList", i);

for (i=0; i<8; i++) {

    _root.fontList.createTextField("userText"+i, i, 30, i*50, 300, 50);

    _root.fontList["userText"+i].text = userFonts[i];

    _root.fontList["userText"+i].border = true;

    _root.fontList["userText"+i].borderColor = 0xFF0000;

    _root.fontList["userText"+i].background = true;

    _root.fontList["userText"+i].backgroundColor = 0xFFFF00;

    _root.fontList["userText"+i]._height = 40;

    displayStyle = new TextFormat(userFonts[i], 18);

    _root.fontList["userText"+i].setTextFormat(1, 50, displayStyle);

    displayStyle_begin_char = new TextFormat(userFonts[i], 30);

    displayStyle_begin_char.align = "right";

    _root.fontList["userText"+i].setTextFormat(0, displayStyle_begin_char);

}

文本框:  
图2-5
上面的程序去掉了鼠标控制部分,仅显示字体控制部分。从图2-5中可以看出,每个字的间距拉大了,这是调整_height属性的结果;文本框的边框线变成了红色,这是通过设置borderColor属性的方式实现的;字体的第一个字符也做了放大,这是对第一个字符设置了不同的大小而产生出来的结果。通过这些设置,可以让程序完成一些以前无法完成的功能,比如文档的下标的显示。这个在以前根本无法解决,但现在可以通过设置相应字符的字体大小得到解决。虽然还没有达到像排版软件那么方便,但至少可以解决了。对于文档中的上标,虽然也可以采用这种方式,但实现起来比较麻烦,在这里就不讲解了,有兴趣的朋友可以自己试试。

 


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有