canvas.DrawText让文字真正居中显示

转载 2016年08月28日 16:25:13

canvas.drawColor(getResources().getColor(R.color.colorPrimary));
        super.onDraw(canvas);
        float x = this.getX();
        float y = this.getY();
        int w = this.getWidth();
        int h = this.getHeight();
        Log.e("x", String.valueOf(x));
        Log.e("y", String.valueOf(y));
        Log.e("x+w/2", String.valueOf(x + w / 2));
        Log.e("y+h/2", String.valueOf(y + h / 2));
        Paint paint = new Paint();
        Rect rect = new Rect();
        paint.setTextAlign(Paint.Align.LEFT);
//        paint.setColor(getResources().getColor(R.color.white));
        paint.getTextBounds("click to scale", 0 , "click to scale".length(), rect);
        paint.setAntiAlias(true);
Paint.FontMetrics metricsInt = paint.getFontMetrics();
//        canvas.drawText("click to scale",(getMeasuredWidth() - rect.width()) / 2,(getMeasuredHeight() - metricsInt.descent - metricsInt.ascent) / 2,paint);
        /**
        * because param y is not the text show in center,but the baseline ,so we must set the baseline instead of text to display in center
        * */
        canvas.drawText("click to scale",(getMeasuredWidth() - rect.width()) / 2,(getMeasuredHeight() - (metricsInt.descent + metricsInt.ascent)) / 2,paint);



参考:http://blog.csdn.net/lovexieyuan520/article/details/43153275


源码下载:git@github.com:edwinsnao/AnimationDemo.git

html5 canvas 文字居中对齐

[color=eight:25px]html部门 [color=eight:25px] [color=eight:25px]css部门 [color=eight:25px]canva...

使用canvas与Paint在View中居中绘制文字

我们在自定义View中有的时候会想自己绘制文字,自己绘制文字的时候,我们通常希望把文字精确定位,文字居中(水平、垂直)是普遍的需求,所以这里就以文字居中为例,看一下android中的文字应该如何绘制,...
  • su1216
  • su1216
  • 2015年07月15日 23:06
  • 10212

android canvas drawText()文字居中

drawText()文字居中方法

html5 canvas 文字居中对齐

html部分 css部分 canvas{width:1000px;height:700px;} js部分 初始的基本格式: window.onload=functio...
  • clh604
  • clh604
  • 2013年01月08日 16:04
  • 19836

Android Canvas drawText()文字居中

最近也是在学习自定义控件,以前只自己随便玩了下,一直觉得比较难,正好现在工作轻松,每天闲着就看看书看看帖子学习自定义控件。 这里也跟大家分享下我关于drawText()文字居中的方法. 先附上dra...

canvas drawText文字垂直居中

原文:http://blog.csdn.net/hursing/article/details/18703599 关键代码Paint.FontMetricsInt fontMetrics = mPa...

Android 史上最简单的实现Canvas drawText文字垂直居中

Android 史上最简单的实现Canvas drawText文字垂直居中楼主最近在做项目,为了方便,写一个自定义的滑动的Button控件,和ViewPager相关联,需要在View上绘制Text(控...

canvas drawText 如何居中显示。

网上很多关于将text居中到某个矩形或者bitmap中的例子,但是我觉得很多是错的,特别是一些人希望通过观察然后设置某个偏移量让它尽可能居中,我觉得这是...

android中canvas.drawText参数的介绍以及绘制一个文本居中的案例

在自定义View中,会经常遇到canvas.drawText这个方法,很多新手都不明白这个方法参数的含义,经过我不断的Google和多次的测试,把我的经验写出来供大家参考,错误之处,欢迎大家给我留言,...

Andriod自定义View二:canvas.drawText参数的介绍以及绘制一个文本居中的案例

首先,我们看下这个方法参数的含义:canvas.drawText(text, x, y, paint),第一个参数是我们需要绘制的文本,第四个参数是我们的画笔,这两个不用多说,主要是第二和第三个参数的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:canvas.DrawText让文字真正居中显示
举报原因:
原因补充:

(最多只允许输入30个字)