转载_paint.ascent()和paint.descent()

1.基准点是baseline

2.ascent:是baseline之上至字符最高处的距离

3.descent:是baseline之下至字符最低处的距离

4.leading:是上一行字符的descent到下一行的ascent之间的距离,也就是相邻行间的空白距离

5.top:是指的是最高字符到baseline的值,即ascent的最大值

6.bottom:是指最低字符到baseline的值,即descent的最大值

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

基线(baeseline),坡顶(ascenter),坡底(descenter)上坡度(ascent),下坡度(descent)行间距(leading):坡底到下一行坡顶的距离字体的高度=上坡度+下坡度+行间距

ascent是指从一个字的基线(baseline)到最顶部的距离,descent是指一个字的基线到最底部的距离

注意, ascent和top都是负数
时间: 2024-12-28 21:28:46

转载_paint.ascent()和paint.descent()的相关文章

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

本博客只要没有注明"转",那么均为原创,转贴请注明本博客链接链接 我们在自定义View中有的时候会想自己绘制文字,自己绘制文字的时候,我们通常希望把文字精确定位,文字居中(水平.垂直)是普遍的需求,所以这里就以文字居中为例,看一下android中的文字应该如何绘制,它与Java又有什么区别. 先来看看我们的目标,见下图 上图是我打开了"显示布局边界"后截的图,所有会有好多框框. 仔细观察上图文字区域,我们会发现文字区域中有5条颜色不同的线.按着从上到下的顺序,他们的

Paint API

// paint恢复为默认设置. paint.reset(); // 从src目录中装载一种画笔的样式 paint.set(src); // 设置画笔的透明度 paint.setAlpha(a); // 设置画笔的抗锯齿情况,使画笔更为圆滑 paint.setAntiAlias(aa); // 设个画笔的ARGB颜色色值 paint.setARGB(a, r, g, b); // 设置画笔的颜色 paint.setColor(color); // 设置画笔的过滤器 paint.setColorF

自定义圆形进度条 自定义倒计时进度条

自定义圆形进度条 自定义倒计时进度条 版权声明:转载必须注明本文转自严振杰的博客: http://blog.csdn.net/yanzhenjie1003 此控件源码已开源到Github:https://github.com/yanzhenjie/CircleTextProgressbar,欢迎Star. 欢迎加入我博客左侧的QQ交流群一起探讨. 效果预览 源代码传送门:https://github.com/yanzhenjie/CircleTextProgressbar 实现与原理 这个文字圆

android:滑动挂断自定义View的简单实现

要点: 随着手指的滑动更新位置 drawText的时候,如何计算开始的位置,使str居中 1.CallSliderEndView.java package net.mobctrl.callendview; import android.annotation.SuppressLint; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Canvas; impo

用TextPaint来绘制文字

TextPaint是paint的子类,用它可以很方便的进行文字的绘制,一般情况下遇到绘制文字的需求时,我们一般用TextPaint所提供的方法.开始学习如何绘制文字之前,我们必须要先了解下android中文字是怎么绘制到屏幕上的,文字的格式又是怎么样的. 一.FontMetrics 1.1 理论知识 它是一个Paint的内部类,作用是“字体测量”.它里面呢就定义了top,ascent,descent,bottom,leading五个成员变量其他什么也没有,和rect很相似.如果你不信,我们可以去

在Android上仿百度贴吧客户端Loading图标小球

封面预览 前言 使用百度贴吧客户端的时候发发现加载的小动画挺有意思的,于是自己动手写写看.想学习自定义View以及自定义动画的小伙伴一定不要错过哦. 读者朋友需要有最基本的canvas绘图功底,比如画笔Paint的简单使用.Path如何画直线等简单的操作,不熟悉也没关系,下文带大家撸代码的时候会简单的讲一下. 此篇文章用到如下知识点: 1).自定义View的测量 2).自定义View属性的自定义及使用 3).Path绘制贝塞尔曲线 4).Canvas的裁剪 5).用ValueAnimator控制

Android自定义控件之日历控件

Android自定义控件之日历控件 2015-10-23 Android开发中文站 三月份学习android,至今也有半年有余,中间也做过两个项目,但是依然感觉自己做的应用不是很有新意,比不上应用市场上那些应用如此绚丽.所以自己仍需继续努力.学习至今,仍感觉自定义控件是一块硬骨头,还没修炼到身后的内功,下面就切入正题,以一次项目的需求,来实现一个自定义的日历控件.效果图先来一发. 我们分析下效果图,然后确定我们的需求. (1).绘制星期的自定义View,用于标识日期的礼拜. (2).绘制日期的自

Android Canvas不能换行,或者不识别\n,\r\n的解决方案

在使用Canvas绘制文本的时候,如果要绘制的字符串含有\r\n,\n换行的时候,会识别不出来,当成空格绘制出来. 解决方案: 1.使用StaticLayout来实现,具体代码如下: TextPaint mTextPaint=new TextPaint(); StaticLayout mTextLayout = new StaticLayout(mText, mTextPaint, canvas.getWidth(), Alignment.ALIGN_NORMAL, 1.0f, 0.0f, fa

codeforces 424 D Biathlon Track

题意:给出一个布满数字的网格,可以上下左右走,若下一个格子的数字比当前格子要大或者小或者一样,分别都要付出代价.给出一个期望代价,问当要求顺时针走出一个长宽均大于3的矩形的四条边后,最接近期望代价的情况. 做法:由于长宽大于3,直接暴力枚举即可. #include<map> #include<string> #include<cstring> #include<cstdio> #include<cstdlib> #include<cmath