`
bogongjie
  • 浏览: 236039 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

android 获取字体宽高

阅读更多
String str = "Hello";  
canvas.drawText( str , x , y , paint);  
  
//1. 粗略计算文字宽度  
Log.d(TAG, "measureText=" + paint.measureText(str));  
  
//2. 计算文字所在矩形,可以得到宽高  
Rect rect = new Rect();  
paint.getTextBounds(str, 0, str.length(), rect);  
int w = rect.width();  
int h = rect.height();  
Log.d(TAG, "w=" +w+"  h="+h);  
  
//3. 精确计算文字宽度  
int textWidth = getTextWidth(paint, str);  
Log.d(TAG, "textWidth=" + textWidth);  
  
    public static int getTextWidth(Paint paint, String str) {  
        int iRet = 0;  
        if (str != null && str.length() > 0) {  
            int len = str.length();  
            float[] widths = new float[len];  
            paint.getTextWidths(str, widths);  
            for (int j = 0; j < len; j++) {  
                iRet += (int) Math.ceil(widths[j]);  
            }  
        }  
        return iRet;  
    }  

 

转载自:http://blog.csdn.net/chuekup/article/details/7518239

分享到:
评论

相关推荐

    Android字体宽高的获取

    获取字体的宽高通常涉及到`Paint`类,`Paint`是Android用于绘制图形和文本的核心类,它包含了设置字体、颜色、风格等属性的方法。 1. **获取字体宽度**: - 使用`Paint.measureText(String text)`方法可以获取文本...

    android可以设置drawableLeft宽和高的控件

    在默认情况下,"drawableLeft"的大小是固定的,与文字大小相适应,但有时我们需要自定义它的宽和高以满足特定设计需求。本文将深入探讨如何在Android中创建一个可以设置"drawableLeft"宽和高的自定义控件。 首先,...

    Android获取手机屏幕宽高、状态栏高度以及字符串宽高信息的方法

    2. 使用`FontMetrics`获取字体的上、下边界,计算出文字的高度: ```java FontMetrics fontMetrics = textPaint.getFontMetrics(); float fTop = fontMetrics.top; float fBottom = fontMetrics.bottom; float ...

    android字体自动适应

    在处理自适应时,需要注意不同字体的字宽可能不同,可能需要额外的计算和调整。 10. **响应式布局**: 使用FlexboxLayout、ConstraintLayout等响应式布局可以帮助更好地适应不同屏幕尺寸,它们可以自动调整组件大小...

    android获取屏幕分辨率实现

    要获取当前设备的屏幕分辨率,我们需要通过WindowManager服务来实例化Display对象,然后调用Display对象的getMetrics()方法传入DisplayMetrics实例,最后从DisplayMetrics对象中读取屏幕宽高。以下是一个简单的示例...

    获取android手机的分辨率、像素密度等

    本文将深入探讨如何获取Android手机的屏幕宽度、屏幕高度、屏幕密度(density)、字体密度(font density)以及屏幕密度DPI。 首先,我们需要理解Android设备屏幕的基本概念: 1. 分辨率:指屏幕水平和垂直方向上的...

    android textview 文字排版 换行

    3. **合理使用LayoutParams**:确保`TextView`的宽高设置合理,避免不必要的重绘。 4. **限制最大行数**:如果文本可能很长,设置`maxLines`以限制绘制区域,减少计算量。 通过理解并应用以上知识点,开发者可以更...

    android中获取屏幕信息,做标准刻度的尺子

    可以使用`MeasureSpec`来获取父视图提供的测量规格,并根据需求设定View的宽高。 5. **绘制刻度**: - 首先确定尺子的最大刻度值,比如100cm,然后根据屏幕宽度将这个范围均分成多个小刻度。 - 对于每个小刻度,...

    Android通过textview设置状态

    3. 聚焦状态(focused):当TextView获取到焦点时,例如通过Tab键导航或使用D-Pad控制器时。 4. 按下状态(pressed):用户按下但尚未释放按钮时的状态。 5. 可用/禁用状态(enabled/disabled):当TextView可以响应...

    获取手机屏幕大小

    在上面的代码中,我们使用 widthPixels 和 heightPixels 属性获取手机屏幕的宽高信息,然后将其格式化为一个字符串,最后显示在TextView 中。 在 Android 中,获取手机屏幕大小可以有多种方法,但是使用 ...

    获取手机屏幕大小(DisplayMetrics类取得画面宽高)

    ### 获取手机屏幕大小(DisplayMetrics类取得画面宽高) 在Android应用开发过程中,了解并获取设备的屏幕尺寸是一项基本且重要的任务。本篇文章将基于提供的代码示例,详细解析如何使用`DisplayMetrics`类来获取手机...

    Android界面布局文字水印

    // 计算水印文字的宽高 Rect bounds = new Rect(); paint.getTextBounds(watermarkText, 0, watermarkText.length(), bounds); // 获取View的宽度和高度 int viewWidth = getWidth(); int viewHeight = ...

    Android屏幕大小和精度

    4. 屏幕比例:宽高比表示屏幕宽度与高度的比例,例如16:9或4:3。Android系统支持多种比例,适应不同形状的屏幕。 三、支持的屏幕分辨率范围 Android系统支持广泛的屏幕分辨率,从小屏手机到大屏平板,甚至电视。...

    Android代码-带文字的ProgressBarDemo源码.zip

    4. XML布局:在布局文件中,你需要使用自定义的ProgressBar控件,设置相关的属性,如宽高、颜色、初始进度等。此外,你还需要确保在Activity或Fragment中正确引用这个布局。 5. 动态交互:在Java代码中,可以通过...

    计算手机屏幕宽高工具

    本文将深入探讨“计算手机屏幕宽高工具”所涉及的知识点,包括屏幕宽高、像素密度(density)、像素(px)与独立像素(dp/dip)之间的关系,以及它们在实际应用中的转换方法。 首先,屏幕宽高指的是手机显示屏的...

    Android ListView扩展(图片+文字)

    使用LinearLayout或RelativeLayout等布局管理器,合理设置元素的属性,如宽高、对齐方式等。 3. 数据绑定:在Adapter中,重写`getView()`方法,这个方法会为ListView的每一项返回一个View。在该方法内,使用...

    Android精确测量文本宽高及基线位置的方法

    在Android开发中,准确地测量文本的宽高以及基线位置是至关重要的,尤其是在自定义View或者绘制复杂图形时。本文将深入探讨如何利用Android的API来实现这一目标。 首先,我们要了解Android中用于绘制文本的基本组件...

    安卓Android源码——BTWebViewSelection(webview选择文字).zip

    本资源“安卓Android源码——BTWebViewSelection(webview选择文字).zip”专注于讲解如何在Webview中实现文字的选择功能,这对于阅读类、资讯类应用或者任何需要用户进行文本操作的应用来说是必不可少的。...

    计算自己手机的屏幕宽高,density值,px 宽高,dp 的宽高,及px 和dp互转

    在Android开发中,理解和计算设备的屏幕属性是至关重要的,这包括屏幕的宽高、density值,以及像素单位px和密度无关像素dp之间的转换。这些参数对于应用的自适应屏幕显示至关重要,确保应用在不同分辨率和密度的设备...

Global site tag (gtag.js) - Google Analytics