Размер значков OS X

какой размер должен иметь значок приложения и значок строки меню для OS X?

Я могу иметь дело с дисплеями с небольшим разрешением, но как насчет Retina - значок, отображаемый в строке меню (например, 20 x 20), будет меньше или размытым на новом MacBook Pro с дисплеем Retina? Я считаю, что значок приложения будет масштабироваться, поэтому, если я подготовлю в два раза больше, чем обычный, он должен быть в порядке на Retina.

Я нашел отличное руководство для разработки iOS с размерами спецификация, но я не могу найти аналогичные спецификации размера для OS X.

6 ответов


значки NSStatusBar (т. е. значки панели меню) отличаются от обычных значков приложений. Я не смог найти официальное руководство по значку NSStatusBar, но я должен верить, что значок панели инструментов директива для кнопок довольно близко. Это предполагает:

  • создание иконок, которые измеряют не более 19x19 пикселей.
  • сделать контур четким и ясным.
  • используйте прямую перспективу.
  • использовать черный (добавить прозрачность только как надо предложить размерность.)
  • использовать сглаживание.
  • используйте формат PDF.
  • убедитесь, что изображение визуально центрируется в элементе управления (обратите внимание, что визуально центрированный может быть не таким же, как математически центрированный).

в тестировании, я нашел:

  1. NSStatusBar, кажется, выглядит лучше всего с чем - то 18 пикселей в высоту или меньше. The systemStatusBar имеет толщину 22.
  2. пока списки PDF формат, я использую png без проблем.
  3. если вы хотите, чтобы ваш значок был белым на синем, когда он выбран, вам нужно предоставить alternateImage в качестве отдельной белой версии вашего значка.

код:

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];


выполните следующие действия, и вы получите совершенно резкий значок строки состояния для retina

  1. откройте png-файл вашего значка в photoshop, он должен быть больше 88px x 88px
  2. перейдите в меню Изображение, размер изображения
  3. установить разрешение 350
  4. установить размер 88px x 88px (пикселей)
  5. сохранить изображение как png добавьте его xcode

чтобы сделать Ваш пункт меню поддержка сетчатка дисплеи Темный Режим и другое государства (например, нажата)

  1. создать два PNG изображения размером 16x16 и 32x32 или, если вы хотите меньше маржа, 18x18 и 36x36 пиксели
  2. создайте новый ресурс изображения в Xcode с помощью Render As значение Template Image и добавьте свои изображения для 1x и 2x
  3. инициализации NSImage из актива изображения без изменение его размера:NSImage(named: "Example")

добавление к ответу Майкла apple теперь требует полностью до 1024x1024px иконок из-за дисплеев retina.

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


максимальный размер значка приложения должен быть 1024 x 1024.

и вы должны создать как обычные, так и иконки Retina разрешением 16 х 16, 32 х 32, 128 х 128, 256 Х 256, 512 х 512 & 1024 х 1024.

детали, для которых вы можете найти в "руководящие принципы высокого разрешения для OS X" документ от Apple.