Ios UIFont和视网膜显示。双倍的尺寸?

Ios UIFont和视网膜显示。双倍的尺寸?,ios,uitextview,retina-display,uifont,textkit,Ios,Uitextview,Retina Display,Uifont,Textkit,我想我可能已经知道答案了,但情况如下: 我有一个规格表,要求字体大小为:11pt 当我这样做时:UIFont*font=[UIFont-fontWithName:@“Gotham”大小:11.0] 在我的iPad4上,字体很小 当我用:UIFont*font=[UIFont-fontWithName:@“Gotham”大小:22.0]将点数加倍时 尺寸看起来合适。我认为@2x设备的字体点数应该加倍,对吗?就像png一样 编辑: 谢谢你澄清这一点。我明白了:UIFont*font=[UIFont-

我想我可能已经知道答案了,但情况如下:

我有一个规格表,要求字体大小为:11pt

当我这样做时:
UIFont*font=[UIFont-fontWithName:@“Gotham”大小:11.0]
在我的iPad4上,字体很小

当我用:
UIFont*font=[UIFont-fontWithName:@“Gotham”大小:22.0]将点数加倍时

尺寸看起来合适。我认为@2x设备的字体点数应该加倍,对吗?就像png一样

编辑: 谢谢你澄清这一点。我明白了:
UIFont*font=[UIFont-fontWithName:@“Gotham”大小:11.0]将在视网膜/非视网膜上产生相同的大小

现在,可能更愚蠢的后续行动:

当我打开photoshop文件(缩放为@2x)时,字体显示为11pt。当我导出文件(转换为png并标记为@2x)并将png放入项目时,为什么图像的文本仍然比我在11pt时通过编程创建的文本大得多?(图像和程序文本都可以在iPad中查看)


我可能是在胡思乱想,但如果能帮我找到解决办法,我将不胜感激

不,您不需要缩放字体大小。字体大小以点为单位,而不是以像素为单位。你觉得
11.0
很小的原因是因为它确实很小;-)


但是大小应该是相同的,不管它是否是视网膜设备。

不,你不需要缩放字体大小。字体大小以点为单位,而不是以像素为单位。你觉得
11.0
很小的原因是因为它确实很小;-)


但是大小应该是相同的,不管它是否是视网膜设备。

不,你不需要缩放字体大小。字体大小以点为单位,而不是以像素为单位。你觉得
11.0
很小的原因是因为它确实很小;-)


但是大小应该是相同的,不管它是否是视网膜设备。

不,你不需要缩放字体大小。字体大小以点为单位,而不是以像素为单位。你觉得
11.0
很小的原因是因为它确实很小;-)


但是不管它是不是视网膜设备,大小都应该是一样的。

如果你做得对,你应该能够忽略像素,完全按照点来考虑,这是本机的测量单位:

  • 如果您有一个内置的界面小部件,例如UILabel,那么
    [UIFont-fontWithName:@“Gotham”size:11.0]
    在视网膜和非视网膜设备上看起来大小相同(但在视网膜上更清晰)

  • 如果您正在实时(在代码中)构建图像,并且您正在使用此字体绘制图像,那么如果这是双分辨率屏幕的2x图像,那么您应该使用双分辨率图形上下文(例如,您使用
    UIGraphicsBeginImageContext(size,NO,0)
    )进行设置,然后再次使用
    [UIFont fontWithName:@“Gotham”大小:11.0]
    在视网膜和非视网膜设备上看起来大小相同(但在视网膜上更清晰)


另一方面,假设您正在Photoshop中准备图像,以便稍后在iOS应用程序中使用(例如,用于图标),并且此图像中有一些字体图形。当然,对于2x版本的图像,您必须将字体大小加倍,就像您将图形中所有内容的大小加倍一样。

如果您这样做是正确的,您应该能够忽略像素,并完全按照点来考虑,即本机测量单位:

  • 如果您有一个内置的界面小部件,例如UILabel,那么
    [UIFont-fontWithName:@“Gotham”size:11.0]
    在视网膜和非视网膜设备上看起来大小相同(但在视网膜上更清晰)

  • 如果您正在实时(在代码中)构建图像,并且您正在使用此字体绘制图像,那么如果这是双分辨率屏幕的2x图像,那么您应该使用双分辨率图形上下文(例如,您使用
    UIGraphicsBeginImageContext(size,NO,0)
    )进行设置,然后再次使用
    [UIFont fontWithName:@“Gotham”大小:11.0]
    在视网膜和非视网膜设备上看起来大小相同(但在视网膜上更清晰)


另一方面,假设您正在Photoshop中准备图像,以便稍后在iOS应用程序中使用(例如,用于图标),并且此图像中有一些字体图形。当然,对于2x版本的图像,您必须将字体大小加倍,就像您将图形中所有内容的大小加倍一样。

如果您这样做是正确的,您应该能够忽略像素,并完全按照点来考虑,即本机测量单位:

  • 如果您有一个内置的界面小部件,例如UILabel,那么
    [UIFont-fontWithName:@“Gotham”size:11.0]
    在视网膜和非视网膜设备上看起来大小相同(但在视网膜上更清晰)

  • 如果您正在实时(在代码中)构建图像,并且您正在使用此字体绘制图像,那么如果这是双分辨率屏幕的2x图像,那么您应该使用双分辨率图形上下文(例如,您使用
    UIGraphicsBeginImageContext(size,NO,0)
    )进行设置,然后再次使用
    [UIFont fontWithName:@“Gotham”大小:11.0]
    在视网膜和非视网膜设备上看起来大小相同(但在视网膜上更清晰)


另一方面,假设您正在Photoshop中准备图像,以便稍后在iOS应用程序中使用(例如,用于图标),并且此图像中有一些字体图形。当然,对于2x版本的图像,您必须将字体大小加倍,就像您将图形中所有内容的大小加倍一样。

如果您这样做是正确的,您应该能够忽略像素,并完全按照点来考虑,即本机测量单位:

  • 如果您有一个内置的界面小部件,例如UILabel,那么
    [UIFontWithName:@“Gotham”大小