android bitmap绘制文字自动换行

public Bitmap getNewBitMap(String text) {
		Bitmap newBitmap = Bitmap.createBitmap(120,150, Config.ARGB_4444);
		Canvas canvas = new Canvas(newBitmap);
		canvas.drawBitmap(bmp, 0, 0, null);
		TextPaint textPaint = new TextPaint();
		textPaint.setAntiAlias(true);
		textPaint.setTextSize(16.0F);
		StaticLayout sl= new StaticLayout(text, textPaint, newBitmap.getWidth()-8, Layout.Alignment.ALIGN_CENTER, 1.0f, 0.0f, false);
		canvas.translate(6, 40);
		sl.draw(canvas);
		return newBitmap;
	}

android StaticLayout参数解释

StaticLayout layout = new StaticLayout(context.getString(R.string.about),textPaint,(int)(300*fDensity),Alignment.ALIGN_CENTER,1.5F,0,false);

layout.draw(canvas);

参数含义:

1.字符串子资源

2 .画笔对象

3.layout的宽度,字符串超出宽度时自动换行。

4.layout的样式,有ALIGN_CENTER, ALIGN_NORMAL, ALIGN_OPPOSITE  三种。

5.相对行间距,相对字体大小,1.5f表示行间距为1.5倍的字体高度。

6.相对行间距,0表示0个像素。

实际行间距等于这两者的和。

7.还不知道是什么意思,参数名是boolean includepad。

需要指出的是这个layout是默认画在Canvas的(0,0)点的,如果需要调整位置只能在draw之前移Canvas的起始坐标
canvas.translate(x,y);


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值