博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android Canvas drawText实现中文垂直居中
阅读量:6634 次
发布时间:2019-06-25

本文共 657 字,大约阅读时间需要 2 分钟。

public
 
void
 onDraw (Canvas canvas) {
    Rect targetRect = new Rect(50501000200);
    Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG); 
    paint.setStrokeWidth(3); 
    paint.setTextSize(80);
    String testString = "Text:中文asdfghjkl";
    paint.setColor(Color.CYAN); 
    canvas.drawRect(targetRect, paint);
    paint.setColor(Color.RED);
    FontMetricsInt fontMetrics = paint.getFontMetricsInt();
    int baseline = targetRect.top + (targetRect.bottom - targetRect.top - fontMetrics.bottom + fontMetrics.top) / 2 - fontMetrics.top;
    // 以下这行是实现水平居中。drawText相应改为传入targetRect.centerX() 
    paint.setTextAlign(Paint.Align.CENTER);  
    canvas.drawText(testString, targetRect.centerX(), baseline, paint);  
}

转载地址:http://ddbvo.baihongyu.com/

你可能感兴趣的文章
LVS+Keepalived实现高可用群集
查看>>
单目运算符重载为友元函数
查看>>
Vmware vSphere常见问题汇总(三)
查看>>
基于OHCI的USB主机 —— USB设备端口特性清除
查看>>
微软宣布MIX11将发布Silverlight 5 Beta
查看>>
2个sqlserver数据库实例之间数据导入导出
查看>>
Oracle数据库安全资源-2
查看>>
大牛教你查库暴库
查看>>
[推荐]在线测试你的网速
查看>>
Android错误:java.lang.ExceptionInInitializerError,java.lang.UnsatisfiedLinkError,
查看>>
Oracle LOCK内部机制及最佳实践系列(五)给出一个导致死锁的SQL示例
查看>>
storm写redis问题小结
查看>>
SAP BASIS 基础教程 SAP BASIS daily Job SM13,SM37,SM21
查看>>
Openstack-make-centos-image
查看>>
活动目录服务的配置与管理(7) 利用组策略实现文件夹重定向
查看>>
JVM探索
查看>>
Keras缔造者:François Chollet专访
查看>>
CSS控制ul的基础代码
查看>>
添加ESXi主机并创建虚拟机
查看>>
PowerShell在Exchange2010下快速开启邮箱[续]
查看>>