首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Android中以磅为单位的字体物理大小

Android中以磅为单位的字体物理大小
EN

Stack Overflow用户
提问于 2010-08-03 11:28:48
回答 2查看 8.8K关注 0票数 3

我有两个设备- HTC纹身和索尼爱立信Xperia X10。一个有145个DPI,另一个有245DPI。

当我以磅为单位为TextView指定字体大小时,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
textView.setTextSize(TypedValue.COMPLEX_UNIT_PT, 6.5f);

我在这两个设备上得到了不同物理大小的文本。在245DPI上,文本几乎不可读。

现在,"pt“的大小应该是物理的。也就是说,在我的测试中,两个文本块应该有相同物理高度的字母。但事实并非如此。

这里会有什么问题呢?

谢谢你的帮助,尤里。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-08-05 11:28:20

实际上,只要底层设备给出正确的显示指标,点总是有效的。

例如,我测试了五个设备:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
NAME      OS    metrics.ydpi  REAL_DPI  DDPI  SD
XPERIA    1.6   159.49677     325       240   1.5
Liquid    1.6   263.8958      285       240   1.5
Tattoo    1.6   145.14067     match     120   0.75
Hero      1.5   179.29352     match     -     1.0
Galaxy    1.6   160.41878     180       160   1.0

可以看出,只有HTC纹身和HTC Hero向Android API提供了正确的显示信息。

这就是为什么点在不同的设备上有不同的物理大小(但不是所有的)。

我发现粗略缩放字体/图像的唯一方法是假设所有内容都是160dpi,并使用DisplayMetrics#scaledDensity -这是错误的,但我看不到任何其他方法。

票数 5
EN

Stack Overflow用户

发布于 2010-08-03 11:35:25

pt的单位是点,它不会根据密度进行缩放。对于非文本,您需要dip (或dp),这是独立于密度的像素。这些将根据密度进行缩放。对于文本,您需要sp,它将根据密度和用户首选的字体大小进行缩放。

这里有一些关于它的信息,也散布在Android文档的其他地方。

http://developer.android.com/guide/practices/screens_support.html#screen-independence

更新:这里是对每个尺寸单位的描述,正如尤里正确地指出的那样,这确实表明pt在物理屏幕上应该始终是1/72英寸。它看起来不是这样工作的,答案就是使用dpsp --如果你想向用户展示像指针这样的东西,只需要做一些数学运算(可以假设dp在160dpi的屏幕上是1px,即1/160英寸)。

http://developer.android.com/guide/topics/resources/more-resources.html#Dimension

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3396007

复制
相关文章
字体大小单位vw和reg
vm是相对浏览器宽度,1vm浏览器1%,10vm10%,浏览器窗口大小,字体自适应,开发多用到vm作为字体单位
十月梦想
2018/08/29
1.2K0
Android 根据屏幕大小设置字体
适应不同Android手机屏幕大小 240*320 320*480 480*800 480*854 540*960 800*1200 800*1280 public static int adjustFontSize(int screenWidth, int screenHeight){ if (screenWidth <= 240) { // 240X320 屏幕 return 10; }else if (screenWidth <= 320){ // 320X
阳光岛主
2019/02/19
1.5K0
Word 技术篇-段落的前后间距单位磅改为行,行改为磅
很多时候,比如我们写论文,word的格式是有严格要求的,我们要一丝不苟的按照要求来。因为,这是一种规范,也是是一种礼仪。
小蓝枣
2020/09/23
1.8K0
Android 中的长度单位详解
一、介绍一下 dp 和 sp。 dp 也就是 dip。这个和 sp 基本类似。如果设置表示长度、高度等属性时可以使用 dp 或 sp。但如果设置字体,需要使用 sp。 dp 是与密度无关,sp除了与密度无关外,还与 scale 无关。如果屏幕密度为160,这时 dp 和 sp 和 px 是一样的。 1dp=1sp=1px 二、介绍一下px 但如果使用 px 作单位,如果屏幕大小不变(假设还是3.2 寸),而屏幕密度变成了320。 那么原来 TextView 的宽度设成160px,在密度为320
再见孙悟空_
2023/02/10
5360
Word文档段落的前后间距单位磅改为行,行改为磅方法演示
很多时候,比如我们写论文,word 的格式是有严格要求的,我们要一丝不苟的按照要求来。因为,这是一种规范,也是是一种礼仪。
小蓝枣
2023/05/27
1.8K0
Word文档段落的前后间距单位磅改为行,行改为磅方法演示
Android开发笔记(一)像素的单位
老子曾说“天下难事必作于易,天下大事必作于细”,其实Android开发也是如此。博主一开始学android的时候,对像素单位不知其所以然,只知一根筋的填数字,结果在模拟器上跑好好的界面,拿到真机上就显示得东倒西歪,害得自己使劲的找bug,这都是没打好基础的缘故呀。所以一开始就把像素这种基础概念弄清楚,后面会少走很多弯路,开发起来也会更加得心应手。 android支持如下像素单位:px(像素)、in(英寸)、mm(毫米)、pt(磅,1/72英寸)、dp(与设备无关的显示单位)、dip(就是dp)、sp(用于设置字体大小),其中常用的就是px、dp和sp三种。 个人理解,px是android屏幕上可显示的最小单位,这个与物理设备的显示屏有关系,一般来说,同样尺寸的屏幕(比如说都是4.7寸的手机),看起来越清晰的屏幕,其像素密度越高,以px计量的分辨率就越大。 而dp与物理设备无关,只与屏幕的尺寸有关,一般来说,同样尺寸的屏幕,以dp计量的分辨率都是一样的,不管这个手机是哪个厂家生产,dp大小都一样。 至于sp,其原理跟dp差不多,那为什么说sp专门用于设置字体大小呢?android手机在系统设置里面可以设置字体的大小(小、普通、大、超大),设置普通字体时,同数值dp和sp的文字看起来是一样大的,但如果设置为大字体,用dp设置大小的文字没有变化,而用sp设置大小的文字就变大了。所以说,dp与系统设置的字体大小没有关系,而sp会随系统设置的字体大小来变大或者变小。
aqi00
2019/01/18
9980
Android AlertDialog修改标题、内容、按钮的字体大小和字体颜色
很简单。 这时候点开AlertDialog查看源码,构造方法以下就是get set 方法了,可以看到一个getButton方法
yechaoa
2022/06/10
4.7K0
Android AlertDialog修改标题、内容、按钮的字体大小和字体颜色
移动应用界面设计的尺寸规范「建议收藏」
移动应用的界面设计画布尺寸设计多大(特别是Android)、图标和字体大小怎么定、需要设计多套设计稿么、如何切图以配合开发的实现? 本篇将结合iOS和android官方的设计规范、搜集的资料以及工作中的摸索,来分享移动应用界面设计中的尺寸规范等问题,希望能给移动端的新手设计师些许指引。若有不当之处,欢迎斧正。
全栈程序员站长
2022/06/25
5.3K0
移动应用界面设计的尺寸规范「建议收藏」
Flutter 大小单位详解
关于Flutter 大小所使用的单位,官方文档没有给出非常明确的解释,因此一直存在模糊的说法,许多从事安卓开发者直接将之解释为安卓开发所用的单位dp,我认为这是非常不明智且不准确的说法,这个不准确不在于实质的数值,而在于概念的混淆!这样极容易对初学者造成误导,从事web前端或iOS原生开发的人,并没有dp的概念,当他们学习Flutter时,必须强行去理解dp的概念,且在iOS或web平台上时也解释为dp,那就是错误的。
arcticfox
2020/06/28
1K0
浅扒Android动态设置字体大小
Android开发中,TextView类的控件应该说是很常用了。一般来说我们是通过android:textSize="20sp" 来设置字体大小,但是很多时候也需要动态设置字体大小,调用也很简单:
JarvanMo
2018/09/06
3.4K0
Android TabLayout修改选中字体大小
style的方式只能改整体的大小,修改选中字体大小就需要用到CustomView了
yechaoa
2022/06/10
2.1K0
Android TabLayout修改选中字体大小
Android 设置字体大小不跟随系统
最近发现如果将手机系统的字体设置为大字体,应用中的字体将跟随系统变大,而布局大部分我们根据设计出图写死了大小,这就会导致文字显示不全。 究其原因到底是因为什么呢? Google了一下,发现原来我们为字体设置的大小为SP,而SP,不仅根据像素进行改变,还会根据系统设置的大小而改变,所以如果我们布局写死的地方,可以将字体的大小也设置位dp。 但是估计等我们发现这个问题的时候,我们的应用可能已经完成或者已经进行了一大部分了,那么怎么解决这个问题呢? 看大家的编码习惯了,如果你的应用进行了抽取,所有的Activity,都继承抽取出来的BaseActivity的话那么添加如下代码,即可解决上述问题。
longzeqiu
2019/08/14
5.6K0
Flutter 大小单位详解
关于Flutter 大小所使用的单位,官方文档没有给出非常明确的解释,因此一直存在模糊的说法,许多从事安卓开发者直接将之解释为安卓开发所用的单位dp,我认为这是非常不明智且不准确的说法,这个不准确不在于实质的数值,而在于概念的混淆!这样极容易对初学者造成误导,从事web前端或iOS原生开发的人,并没有dp的概念,当他们学习Flutter时,必须强行去理解dp的概念,且在iOS或web平台上时也解释为dp,那就是错误的。
arcticfox
2020/06/22
2.8K0
【总结】移动应用界面设计的尺寸设置及规范
刚接触移动应用的界面设计,最先跳入脑海的疑问是:画布尺寸设计多大(特别是Android)、图标和字体大小怎么定、需要设计多套设计稿么、如何切图以配合开发的实现? 本篇将结合iOS和android官方的设计规范、搜集的资料以及工作中的摸索,来分享移动应用界面设计中的尺寸规范等问题,希望能给移动端的新手设计师些许指引。若有不当之处,欢迎斧正。
李维亮
2021/07/09
3.6K0
【总结】移动应用界面设计的尺寸设置及规范
vscode设置字体大小和字体(vscode窗口字体大小设置)
第一步:首先打开vscode,在vscode的左下角有一个设置按钮,单机打开,选择settings选项
全栈程序员站长
2022/08/02
23.8K0
vscode设置字体大小和字体(vscode窗口字体大小设置)
Android中的单位(dp、sp、dpi)
概述 因为不同的屏幕具有不同的像素密度,因此同样数量的像素在不同设备上可能对应于不同的物理尺寸。因此要使用 dp和 sp单位。 dp:是一种密度无关像素,对应于160dpi下像素的物理尺寸。 sp:
用户1205080
2018/10/18
2K0
Android中的单位(dp、sp、dpi)
Latex设置字体大小及表格中的文字大小等
Latex中遇到表格超出半个分栏的情况,可以考虑将表格中的字体设小来解决,方法如下:
狼啸风云
2020/10/09
14.2K0
pycharm改字体的大小_pycharm设置字体颜色
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/172935.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/25
3.2K0
pycharm改字体的大小_pycharm设置字体颜色
Android获取屏幕分辨率及DisplayMetrics简介[通俗易懂]
Android 可设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人员还是必须知道手机屏幕的边界,以避免缩放造成的布局变形问题。
全栈程序员站长
2022/07/20
4.1K0
Android获取屏幕分辨率及DisplayMetrics简介[通俗易懂]
点击加载更多

相似问题

让jquery返回以磅为单位的字体大小

30

以imagettftext为单位的像素字体大小而不是磅大小

21

将LogFont高度转换为以磅为单位的字体大小

24

是否将iOS UIFont中的字体大小(以磅为单位)转换为Android TextView的大小(sp或dp)?

11

确定可见的工作表区域大小(以磅为单位

210
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文