OS X图标大小

时间:2012-10-03 18:51:40

标签: objective-c xcode macos cocoa retina-display

OS X的应用程序图标和菜单栏图标应该是多大?

我可以处理小分辨率显示但是Retina怎么样?菜单栏上显示的图标(例如20 x 20)在带有Retina显示屏的新款MacBook Pro上会变小还是模糊? 我估计应用程序图标将被缩放,所以如果我准备两倍于常规,那么Retina应该没问题。

我找到了一个优秀的尺寸规格iOS开发指南,但我找不到OS X的类似尺寸规格。

6 个答案:

答案 0 :(得分:38)

NSStatusBar图标(即菜单栏图标)与常规应用程序图标不同。我无法找到NSStatusBar官方图标指南,但我必须相信按钮的Toolbar Icon guideline非常接近。它表明:

  • 创建尺寸不超过19x19像素的图标。
  • 使轮廓清晰锐利。
  • 使用直观的视角。
  • 使用黑色(仅在必要时添加透明度以建议 维数)。
  • 使用抗锯齿。
  • 使用PDF格式。
  • 确保 图像在控件中以视觉为中心(注意在视觉上 居中可能与数学中心不同。)

在测试中,我发现:

  1. NSStatusBar在18像素高或更低的情况下看起来效果最佳。 systemStatusBar has a thickness of 22
  2. 。{{3}}。
  3. 虽然它列出了PDF格式,但我一直在使用png。
  4. 如果您希望图标在选中时为蓝色白色,则需要将alternateImage作为图标的单独白色版本提供。
  5. 代码示例:

    myStatusItem = [[NSStatusBar systemStatusBar]statusItemWithLength:NSSquareStatusItemLength];
    NSImage *statusImage = [NSImage imageNamed:@"Status.png"];
    [myStatusItem setImage:statusImage];
    NSImage *altStatusImage = [NSImage imageNamed:@"StatusHighlighted"];
    [myStatusItem setAlternateImage:altStatusImage];
    [myStatusItem setHighlightMode:YES];
    [myStatusItem setMenu:self.myStatusMenu];
    

答案 1 :(得分:6)

答案 2 :(得分:5)

要使菜单项支持 Retina 显示,暗模式和不同的状态(例如按下)

  1. 创建两个大小为16x1632x32的PNG图片,或者,如果您想要更少的保证金,18x1836x36像素
  2. 在Xcode中创建新的图片资源,Render As设置为Template Image并添加1x2x
  3. 的图片
  4. 从图片资源初始化NSImage而不更改其尺寸:NSImage(named: "Example")

答案 3 :(得分:4)

按照以下步骤操作,您将获得一个非常清晰的视网膜状态栏图标

  1. 在photoshop中打开你的Icon的png文件,它应该大于88px x 88px
  2. 转到菜单,图像,图像大小
  3. 将分辨率设置为350
  4. 将尺寸设置为88px x 88px(像素)
  5. 将图片另存为png 添加它xcode

答案 4 :(得分:-2)

由于视网膜显示,添加到迈克尔的答案苹果现在需要一直到1024x1024px的图标。

http://www.cultofmac.com/179738/apple-now-requires-high-res-1024x1024-icons-for-every-mac-os-x-app/

答案 5 :(得分:-3)

应用图标的最大尺寸应为1024 x 1024。

你必须创建16 x 16,32 x 32,128 x 128,256 x 256,512 x 512和16 x的常规和视网膜分辨率图标。 1024 x 1024。

您可以在Apple的"High Resolution Guidelines for OS X"文档中找到详细信息。