ActionScript
TypeScript
JavaScript

文本对齐&自动换行

发布时间:2017-03-10

关于对齐模式方面,主要是常规的水平对齐与垂直对齐,可以让我们的文本在文本区域居中显示。下面我们先了解一下API的参数说明,再通过示例代码进行介绍。

Laya.display.text 中的关于文本样式的API参数:

image.png

image.png

image.png

image.png

    给我们设置字体样式的代码中,先给这个文本设置一个文本区域,然后设置文本在文本区域水平居中和垂直居中。不设置文本区域的话直接设置文本的水平对齐和垂直对齐不会有效果。

package {
 import laya.display.Text;
 public class LayaSample {
  
  public function LayaSample() {
   //初始化引擎
   Laya.init(1136, 640);
   
   var  txt:Text = new Text();
   //设置文本内容
   txt.text = "hello_world";
   //设置文本区背景
   txt.bgColor = "#c30c30";
   //设置文本的宽高
   txt.width = 400;
   txt.height = 400;
   //设置文本水平居中
   txt.align = "center";
   //设置文本垂直居中
   txt.valign = "middle";
   
   Laya.stage.addChild(txt);
  }  
 }
}

blob.png

在实际编码中如果需要其他的对齐模式,请参考API中的align 和valign的取值,找到适合项目的水平对齐模式和垂直对齐模式。


如果我们的文本内容超过了我们设置的文本区域,将不会显示超出舞台的内容,这个时候我们就需要使用自动换行来显示我们过长的文本。

API参数:

image.png

在上面的代码中将txt的文本内容设置的多一些,然后添加自动换行的代码。

要设置好文本区域的宽和高,要不然文字会按照默认的text的宽进行自动换行。

(function()
{
	var Text    = Laya.Text;
	(function()
	{
		Laya.init(400,600);
		createText();
	})();

	function createText()
	{
		var txt = new Text();

   //设置文本区背景
   txt.bgColor = "#c30c30";
   //设置文本的宽高
   txt.width = 400;
   txt.height = 400;
   //设置文本水平居中
   txt.align = "center";
   //设置文本垂直居中
   txt.valign = "middle";
   //设置文本内容
   txt.text = "Layabox是HTML5引擎技术提供商与优秀的游戏发行商,面向AS/JS/TS开发者提供HTML5开发技术方案!";
	//文本自动换行
  txt.wordWrap = true;
   
   Laya.stage.bgColor = "#ffffff";
   
		Laya.stage.addChild(txt);
	}
})();
}

blob.png

blob.png

这里我们就可以看到我们设置的自动换行已经实现,所有文本都在这个文本区域内显示。