1. 1.获取当前设备的屏幕大小
  2. DisplayMetrics displayMetrics = new DisplayMetrics();
  3. this.getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
  4. 2.计算与你开发时设定的屏幕大小的纵横比(这里假设你开发时定的屏幕大小是480*800)
  5. int screenWidth = displayMetrics.widthPixels;
  6. int screenHeight = displayMetrics.heightPixels;
  7. float ratioWidth = (float)screenWidth / 480;
  8. float ratioHeight = (float)screenHeight / 800;
  9. RATIO = Math.min(ratioWidth, ratioHeight);
  10. if (ratioWidth != ratioHeight) {
  11. if (RATIO == ratioWidth) {
  12. OFFSET_LEFT = 0;
  13. OFFSET_TOP = Math.round((screenHeight - 800 * RATIO) / 2);
  14. }else {
  15. OFFSET_LEFT = Math.round((screenWidth - 480 * RATIO) / 2);
  16. OFFSET_TOP = 0;
  17. }
  18. }
  19. 3.根据上一步计算出来的最小纵横比来确定字体的大小(假定在480*800屏幕下字体大小设定为35)
  20. public static int TEXT_SIZE = Math.round(35 * RATIO);
  21. 4.根据上一步计算的字体大小来设定应用程序中字体的大小
  22. Paint paint = new Paint();
  23. paint.setTextSize(TEXT_SIZE);
  1. canvas.drawText("test", 0, 0, paint);
  2. from:http://blog.csdn.net/cq361106306/article/details/38400647

( 转 ) Android自绘字体大小paint.settextsize随分辨率大小变化的更多相关文章

  1. Android字体大小怎么自适应不同分辨率?

    今天有人问我,android系统不同分辨率,不同大小的手机,字体大小怎么去适应呢?其实字体的适应和图片的适应是一个道理的. 一. 原理如下: 假设需要适应320x240,480x320分辨率.在res ...

  2. Android怎么使用字体图标 自定义FontTextView字体图标控件-- 使用方法

    首先我想说明一下字体图标的好处,最大的好处就是自适应了,而且是使用TextView 不用去切图,是矢量图 灵活调用 第一步我要说明一下一般字体图标的来源,我这里使用的是  --阿里巴巴矢量图标库 -网 ...

  3. android 绘图之Path与Paint详解

    /** * Paint类介绍 * * Paint即画笔,在绘图过程中起到了极其重要的作用,画笔主要保存了颜色, * 样式等绘制信息,指定了如何绘制文本和图形,画笔对象有很多设置方法, * 大体上可以分 ...

  4. Android 自绘TextView解决提前换行问题,支持图文混排

    先看下效果图: 上面是MTextView,下面是默认的TextView. 一.原因 用最简单的全英文句子为例,如果有一个很长的单词,这一行剩余的空间显示不下了,那么规则就是不打断单词,而是把整个单词丢 ...

  5. Android实现自定义字体

    介绍 最近在看开源项目的时候,发现里面涉及到了自定义字体,虽然自己目前还用不到,但是动手demo笔记记录一下还是有必要的,没准哪天需要到这个功能. 原理 1.其实实现起来非常简单,主要是用到了Type ...

  6. java的字体的颜色,型号,大小的方法

    jTextPane1.setForeground(Color.green);//设置java字体的颜色   设置字体的颜色和型号和大小 jTextPane1.setFont(new Font(&quo ...

  7. 【转】Android绘制View的过程研究——计算View的大小

    Android绘制View的过程研究——计算View的大小 转自:http://liujianqiao398.blog.163.com/blog/static/18182725720121023218 ...

  8. Android 更换系统字体......

    Android 更换系统字体...... 原文:http://vision-apps.blogspot.hk/2012/02/android-better-way-to-apply-custom-fo ...

  9. Android替换APP字体 — Typeface

    Android替换APP字体 — Typeface APP字体的思路一般都会想到自定义控件(TextView.EditView),但是项目中会有很多种控件,就算用也会承担一些风险和资源的消耗,主要是这 ...

随机推荐

  1. Bash的自动补全

    内置补全命令 Bash内置两个补全命令,分别是compgen和complete.compgen命令根据不同的参数,生成匹配单词的候选补全列表,例子如下: monster@monster-Z:~$ co ...

  2. [cocos2d-x]深入--几个代表性的类

    摘要: 此文对cocos2d-x引擎中最具代表性,最能体现框架结构的几个类做了简单的介绍, 包括Director,Application, Renderer, EventDispatcher, Sch ...

  3. NOIP2015子串[序列DP]

    题目背景 无 题目描述 有两个仅包含小写英文字母的字符串 A 和 B.现在要从字符串 A 中取出 k 个互不重 叠的非空子串,然后把这 k 个子串按照其在字符串 A 中出现的顺序依次连接起来得到一 个 ...

  4. ORCHARD 是什么?

    官网 http://orchard.codeplex.com 教程 http://www.cnblogs.com/sunjunlin/p/3876693.html [翻译]从头开始编写一个Orchar ...

  5. using关键字背后的故事!

    using关键字的作用: 1:可以引入命名空间2:可以释放资源 *****不能使用using语句完全替换掉(try-catch-finally)语句(无法进行异常处理) 在出了using语句的{}后, ...

  6. npm淘宝镜像

    前端开发会用到npm的包,但是国外的速度有时候很慢,幸运的是,淘宝做了镜像,一起来看看吧. https://npm.taobao.org/

  7. linux基本工具使用(二)

    1 查找某个目录下面一个所有的可执行文件,并且删除(对删除一个工程的可执行文件格外有用) find . -maxdepth 1 -file f -perm -111 | xargs rm

  8. Qt 学习笔记 TreeWidget 增删改

    在窗体上放一个TreeWidget控件和四个PushButton加一个Horizontal Spacer 布局如图 给树添加元素节点的方法和实现 .h文件 QTreeWidgetItem * AddT ...

  9. C# 值类型和引用类型

    一.基本概念 C#只有两种数据类型:值类型和引用类型 值类型在线程栈分配空间,引用类型在托管堆分配空间 值类型转为引用类型称成为装箱,引用类型转为值类型称为拆箱 以下是值类型和引用类型对照表 从上图可 ...

  10. IDEA 13 无法进入debug 模式解决方案

    1.最近在idea中使用tomcat开发项目,像往常一样打开tomcat进行debug,但奇怪的事情出现了,项目根本不进断点.后查找原因,估计idea的加载参数方式是:先加载tomcat中设置的参数, ...