2012-10-03 48 views
19

¿Qué tamaño debe tener un ícono de aplicación y un ícono de barra de menús para OS X?Tamaño de los iconos de OS X

Puedo manejar pantallas de resolución pequeña, pero ¿qué pasa con Retina? ¿Un icono mostrado en la barra de menús (por ejemplo, 20 x 20) será más pequeño o borroso en una nueva MacBook Pro con pantalla Retina? Creo que el icono de la Aplicación se escalará, por lo que si me preparo dos veces más grande de lo normal, debería estar bien en Retina.

me pareció una excelente guía para el desarrollo de iOS con la especificación de tamaños, pero no puedo encontrar las especificaciones de tamaño similar para OS X.

Respuesta

34

iconos NSStatusBar (es decir, iconos de la barra de menús) son diferentes de iconos de aplicaciones regulares. No he podido encontrar una guía de icono oficial NSStatusBar, pero tengo que creer que el Toolbar Icon guideline para botones está bastante cerca. Sugiere:

  • Cree iconos que midan no más de 19x19 píxeles.
  • Haga que el contorno sea nítido y claro.
  • Utilice una perspectiva directa.
  • Use negro (agregue transparencia solo cuando sea necesario para sugerir dimensionalidad ).
  • Utilice anti-aliasing.
  • Utilice el formato PDF.
  • Asegúrate de que la imagen esté centrada visualmente en el control (ten en cuenta que centrado en el aspecto visual puede no ser el mismo que el centrado matemáticamente).

En las pruebas, he encontrado:

  1. NSStatusBar parece mirar mejor con algo de 18 píxeles de alto, o menos. El systemStatusBar has a thickness of 22.
  2. Mientras enumera el formato PDF, he estado usando png sin problema.
  3. Si desea que su icono sea blanco sobre azul cuando se selecciona, debe proporcionar la Imagen alternativa como una versión blanca separada de su icono.muestra

Código:

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

No hay necesidad de una imagen alternativa si está usando una imagen de plantilla. Si el nombre de la imagen termina en "Plantilla", se dibujará en blanco sobre azul automáticamente. – pointum

+0

Si el nombre de la imagen no termina con 'Templete', alternativamente puede establecer '[[myStatusItem image] setTemplate: YES];' luego se dibujará en blanco en el modo resaltado. – jeevatkm

+0

Simplemente use "xxxTemplate.png" y "[email protected]" como el nombre del icono de la bandeja, y todo se configurará automáticamente. Esta es la manera perfecta de hacerlo. – RRN

-3

El tamaño máximo para el icono de la aplicación debe ser de 1024 x 1024.

Y usted tiene que crear dos iconos regulares y la retina resolución de 16 x 16, 32 x 32, 128 x 128, 256 x 256, 512 x 512 & 1024 x 1024.

los detalles para los que se pueden encontrar en el documento "High Resolution Guidelines for OS X" de Apple.

+0

¿Qué hay del tamaño del ícono NSStatusItem? No puedo encontrar el tamaño adecuado en cualquier lugar, gracias por la "Guía de alta resolución para OS X" – maseth

+1

1024 x 1024 :)) – Nathan

+0

@mason - buena pregunta sobre el icono 'NSStatusItem', puede usar un PDF (por ej., Consulte ) para ese – CRD

6
+1

Acepto los tamaños de los iconos, aunque mucho, pero ¿qué hay del tamaño del icono de NSStatusMenu? – maseth

+1

Estos iconos deben tener un tamaño de 18x18 píxeles y se deben hacer como PNG para que pueda obtener la transparencia que necesita. – Nathan

+0

@NathanSakoetoe Si estos iconos se crean a 18x18, no son claros en una pantalla Retina. Deben ser más grandes, pero no sé el tamaño adecuado. –

4

Siga estos pasos y obtendrá un icono de la barra de estado perfectamente afilada de la retina

  1. Abrir un archivo png del icono en photoshop debe ser mayor de 88px x 88px
  2. ir al menú, Imagen, Tamaño de imagen
  3. establecer la resolución a 350
  4. conjunto tamaño de 88 píxeles x 88 píxeles (píxeles)
  5. guardar imagen como png agregarlo Xcode
+0

O simplemente guárdelo como PDF – Charlie

+1

Estas dimensiones funcionaron bien con 'nw.js'. La versión de la retina es muy clara. – cbednarski

2

Para que su menú de soporte de productos a Retina pantallas, oscuros modo y diferentes estados (por ejemplo, presionado)

  1. Cree dos imágenes PNG de tamaño 16x16 y 32x32 o, si se quiere menos margen, 18x18 y 36x36 píxeles
  2. crear un nuevo elemento de imagen en Xcode con Render As conjunto de Template Image y añadir sus imágenes para 1x y 2x
  3. inicializar su NSImage del elemento de imagen sin cambiar su tamaño: NSImage(named: "Example")