我需要将像素转换为C#中的Points.我已经看到了关于这个主题的一些复杂的解释,但似乎找不到一个简单的公式.让我们假设一个标准的96dpi,我如何计算这个转换?
我正在努力准确地理解点大小的UIFont含义.它不是像素,它似乎不是点的标准定义,它们与1/72英寸相关.
我使用-[NSString sizeWithFont:]各种大小的字体计算出像素大小,并得到以下结果:
| Point Size | Pixel Size |
| ---------- | ---------- |
| 10.0 | 13.0 |
| 20.0 | 24.0 |
| 30.0 | 36.0 |
| 40.0 | 47.0 |
| 50.0 | 59.0 |
| 72.0 | 84.0 |
| 99.0 | 115.0 |
| 100.0 | 116.0 |
Run Code Online (Sandbox Code Playgroud)
(我做了[@"A" sizeWithFont:[UIFont systemFontOfSize:theSize]])
并且72.0看点大小,这不是1英寸,因为这是在DPI为163的设备上,所以1英寸将是163.0像素,对吧?
任何人都可以用UIFont术语解释什么是"点" ?即我的方法是错误的,如果我使用别的东西,我会看到有关字体的东西是72点的163像素?或者纯粹是从其他东西定义一个点?
我在psd文件中有一个设计.所以我将所有文本属性(fontname,size(in pt),color等)复制到代码中并运行它.我做了一个截图并将其与设计进行了比较.我想知道,为什么iOS(在我的情况下)渲染字体大小(以pt为单位)比Photoshop小?
是否取决于屏幕分辨率?可能有一个帮助函数,我可以从px大小计算它?
谢谢...
我有Photoshop文件包含iOS应用程序的设计,我需要获取有关所有标签和其他控件的字体大小的信息.默认情况下,Photoshop中的大小以点显示,那么如何将此值转换为XCode?例如:


提前致谢.