Какие размеры значков должен включать значок моего приложения Windows? - PullRequest
228 голосов
/ 13 июля 2010

У меня есть приложение для Windows, которое будет работать в Windows XP и новее (то есть Vista / 7). Согласно Руководству по пользовательскому интерфейсу Vista стандартные размеры составляют 16x16, 32x32, 48x48, 256x256 (стандартные размеры XP не включают значок 256x256). В дополнение к этим размерам у меня также есть 96x96 и 128x128 (и я мог бы создать больше).

Какие из этих размеров значков я должен включить? Будет ли оболочка на самом деле использовать «нестандартные» размеры, или я просто раздую свое приложение?

Ответы [ 7 ]

300 голосов
/ 14 июля 2010

Я потратил некоторое время, чтобы проверить это подробно.Я создал значок, изображения которого имеют размеры 16, 24, 32, 40, 48, 64, 96, 128 и 256. Затем я проверил, какое изображение отображается.Все это было сделано с нормальным 96 точек на дюйм.При использовании большего DPI могут быть использованы большие размеры (только проверено это немного в Windows 7).Результаты:

Windows XP:

  • Просмотры обозревателя:
    • Подробности / Список: 16
    • Значки: 32
    • Плитка / Миниатюры: 48
  • Щелкните правой кнопкой мыши -> Свойства / выберите новый значок: 32
  • Область быстрого запуска: 16
  • Рабочий стол: 32

Windows 7:

  • Представления обозревателя:
    • Подробности / Список / Маленькие символы: 16
    • Все остальные параметры: 256 (при необходимости изменен размер)
  • Щелкните правой кнопкой мыши -> Свойства / выберите новый значок: 32
  • Закреплено на панели задач: 32
    • Меню правой кнопки мыши: 16
  • Рабочий стол:
    • Маленькие символы: 32
    • Средние символы: 48
    • Большие символы: 256 (при необходимости изменен размер)
    • Масштабирование с помощью Ctrl + колесо мыши: 16, 32, 48, 256

Windows Runtime: ( отсюда )

  • Основная плитка: 150x150, 310x150 (широкая версия)
  • Маленький логотип: 30x30
  • Значок (для экрана блокировки): 24x24, монохроматический
  • Заставка: 620x300
  • Магазин: 50x50

Итак, результатВ Windows XP используются значки 16, 32 и 48 размеров, а в Windows 7 (и, вероятно, также Vista) также используются значки размером 256. Все остальные промежуточные размеры значков игнорируются (они могут использоваться в некоторых областях, которые я не проверял).


Я также проверял в Windows 7что происходит, если отсутствуют размеры значков:

Сгенерированы недостающие размеры (очевидно).С размерами 16, 32 и 48, если один отсутствует, предпочтительнее уменьшение.Так что, если у нас есть иконки размером 16 и 48, значок 32 создается из значка 48. Значок 256 используется только для них, если другие размеры недоступны! Так, если значки имеют размер 16 и 256, другие размеры увеличиваются по сравнению с значком 16!

Дополнительно, еслизначок 256 отсутствует, значок 48 (возможно, сгенерированный) используется, но больше не изменяется.Итак, у нас есть (возможно, большая) пустая область со значком 48 в центре.

Обратите внимание, что размер значка рабочего стола по умолчанию в XP был 32x32, а в Windows 7 - 48x48. Как следствие, для Windows 7 относительно важно иметь значок 48. В противном случае он масштабируется с меньшего значка, который может выглядеть довольно некрасиво.


ПростоПримечание о совместимости с Windows XP: если вы повторно используете значок в качестве значка окна, обратите внимание, что это может привести к сбою приложения, если вы используете сжатый значок 256.Решение состоит в том, чтобы либо не сжимать значок, либо создавать вторую версию без (сжатого) значка 256.См. здесь для получения дополнительной информации.

27 голосов
/ 05 сентября 2012

После некоторого тестирования со значком с 8, 16, 20, 24, 32, 40, 48, 64, 96, 128 и 256 пикселей (256 в PNG) в Windows 7:

  • При разрешении 100%: Explorer использует 16, 40, 48 и 256. Windows Photo Viewer использует 96. Paint использует 256.
  • При разрешении 125%: Explorer использует 20, 40 и 256. Средство просмотра фотографий Windows использует 96. Paint использует 256.
  • При разрешении 150%: Explorer использует 24, 48 и 256. Windows Photo Viewer использует 96. Paint использует 256.
  • При разрешении 200%: Explorer использует 40, 64, 96 и 256. Windows Photo Viewer использует 128. Paint использует 256.

Так что 8, 32 никогда не использовались (для меня это странно для 32), а 128 только Windows Photo Viewer с очень высоким разрешением экрана, т.е. almot никогда не использовался.

Это означает, что ваш значок должен по крайней мере обеспечить 16, 48 и 256 для Windows 7. Для поддержки новых экранов с высоким разрешением вы должны предоставить 16, 20, 24, 40, 48, 64, 96 и 256. Для Windows 7, все изображения могут быть сжаты с использованием PNG, но для обратной совместимости с Windows XP не следует сжимать от 16 до 48.

22 голосов
/ 11 сентября 2010

Указание Microsoft UX гласит:

"Значки приложений и элементы панели управления: полный набор включает в себя 16x16, 32x32, 48x48 и 256x256 (код масштабируется между 32 и 256)."

Для меня это подразумевает (но, к сожалению, не явно), что вы должны предоставить эти 4 размера.

Дополнительные сведения о цветовых форматах, которые вы также можете найти полезными:

  • "Для файлов значков также требуются версии 8-битной и 4-битной палитры для поддержки настройки по умолчанию на удаленном рабочем столе."

  • "Должна быть включена только 32-битная копия изображения с разрешением 256x256 пикселей, и только изображение с разрешением 256x256 пикселей должно быть сжато [как PNG], чтобы уменьшить размер файла."

11 голосов
/ 29 ноября 2016

В случае с Windows 10 это не совсем точно, на самом деле ни один из ответов на stackoverflow не был, я узнал об этом, когда попытался использовать пиксельную графику в качестве значка, и он был изменен, когда не предполагалось (в этом случае было легко увидеть причину интерполяции и сглаживания окон), даже если вы использовали размеры из этого поста.

Итак, я создал приложение и выполнил работу со всеми настройками DPI, см. Его здесь:
Windows 10 для всех разрешений значков во всех настройках DPI
Вы также можете использовать мойприложение для создания иконок, также с интерполяцией ближайшего соседа с сглаживанием, что не делается ни с одним из плохих редакторов, которых я видел.

Если вам нужны только разрешения:
16, 20, 24, 28, 30, 31, 32, 40, 42, 47, 48, 56, 60, 63, 84, 256
, и вы должны использовать все значки PNG и все, что вы положили рядом с ними, он выигралне будет отображаться.Смотрите мой пост почему.

10 голосов
/ 02 ноября 2016

(обновленный ответ для Windows 8/10)

Полный список рекомендаций и размеров см. Здесь, в новых рекомендациях по проектированию Windows: https://msdn.microsoft.com/en-us/windows/uwp/controls-and-patterns/tiles-and-notifications-app-assets#asset-types

Еще включеныФайл .ICO следующих размеров для поддержки устаревших приложений:

  • 16x16
  • 24x24
  • 32x32
  • 48x48
  • 256x256
6 голосов
/ 13 июля 2010

Не 96х96, используйте вместо него 64х64. Я обычно использую:

  • 16 - кнопка статуса / заголовка
  • 32 - значок на рабочем столе
  • 48 - просмотр папки
  • 64/128 - Дополнительные размеры

256 работает и на XP, однако старые компиляторы ресурсов иногда жаловались на ошибки «нехватки памяти».

1 голос
/ 05 сентября 2017

Из Рекомендации Microsoft MSDN :

Значки приложений и элементы панели управления : полный набор включает 16x16, 32x32, 48x48 и 256x256 (кодмасштабируется между 32 и 256).Требуется формат файла .ico.Для классического режима полный набор составляет 16x16, 24x24, 32x32, 48x48 и 64x64.

Так что у нас уже есть стандартные рекомендуемые размеры:

  • 16 x 16,
  • 24 x 24,
  • 32 x 32,
  • 48 x 48,
  • 64 x 64,
  • 256 x 256.

Если мы хотим поддерживать настройки высокого разрешения, полный список будет также включать следующие размеры:

  • 20 x 20,
  • 30 x30,
  • 36 х 36,
  • 40 х 40,
  • 60 х 60,
  • 72 х 72,
  • 80 х80,
  • 96 x 96,
  • 128 x 128,
  • 320 x 320,
  • 384 x 384,
  • 512 x512.
...