какие размеры значков должен включать значок моего приложения windows?

<p>у меня есть приложение windows, которое будет работать в windows xp и более новых версиях (т.е. vista/7). согласно <a href="http://msdn.microsoft.com/en-us/library/dn742485.aspx#size\_requirements">vista ui guidelines</a> , стандартные размеры составляют 16x16, 32x32, 48x48, 256x256 (стандартные размеры xp не включают значок 256x256). в дополнение к этим размерам у меня также есть 96x96 и 128x128 (и я мог бы создать больше).</p><p>какие из этих размеров значков я должен включить? будет ли на самом деле shell использовать "нестандартные" размеры, или я просто раздую свое приложение?</p>

<p>я потратил некоторое время, чтобы проверить это подробно. я создал значок, изображения которого имеют размеры 16, 24, 32, 40, 48, 64, 96, 128 и 256. затем я проверил, какое изображение отображается. все это было сделано с нормальным 96 точек на дюйм. при использовании большего dpi могут быть использованы большие размеры (только проверено это немного в windows 7). результаты, достижения:</p><p><strong> windows xp: </strong></p><ul> <li>исследователь просмотров: <ul> <li>подробности/список: 16</li> <li>иконок: 32</li> <li>плитка/миниатюры: 48</li> </ul> </li> <li>щелкните правой кнопкой мыши -> свойства/выберите новый значок: 32</li> <li>площадь быстрого старта: 16</li> <li>рабочий стол: 32</li> </ul><p><strong> windows 7: </strong></p><ul> <li>исследователь просмотров: <ul> <li>подробности/список/маленькие символы: 16</li> <li>все остальные параметры: 256 (изменено при необходимости)</li> </ul> </li> <li>щелкните правой кнопкой мыши -> свойства/выберите новый значок: 32</li> <li>закреплено на панели задач: 32 <ul> <li>меню правой кнопки мыши: 16</li> </ul> </li> <li>desktop: <ul> <li>маленькие символы: 32</li> <li>средние символы: 48</li> <li>большие символы: 256 (изменено, если необходимо)</li> <li>масштабирование с помощью ctrl + колесико мыши: 16, 32, 48, 256</li> </ul> </li> </ul><p><strong> windows runtime: ( <a href="http://mark.mymonster.nl/2012/07/17/what-icon-sizes-are-important-for-your-win-rt-app">отсюда</a> ) </strong></p><ul> <li>основная плитка: 150x150, 310x150 (широкая версия)</li> <li>маленький логотип: 30х30</li> <li>значок (для экрана блокировки): 24x24, монохромный</li> <li>заставка: 620х300</li> <li>магазин: 50x50</li> </ul><p>итак, результат: windows xp использует значки размером 16, 32, 48, а windows 7 (и, вероятно, также vista) также использует значки размером 256. <strong> все остальные промежуточные размеры значков игнорируются </strong> (они <em> могут </em> использоваться в некоторой области, которую я не сделал проверять).</p><hr><p>я также проверил в windows 7, что происходит, если отсутствуют размеры значков:</p><p>пропущенные размеры генерируются (очевидно). с размерами 16, 32 и 48, если один отсутствует, предпочтительнее уменьшение. так что, если у нас есть иконки размером 16 и 48, значок 32 создается из значка 48. <strong> значок 256 используется только для них, если другие размеры недоступны! </strong> так, если значки имеют размер 16 и 256, другие размеры масштабируются из 16 иконка!</p><p>кроме того, если значок 256 отсутствует, используется значок (возможно, сгенерированный) 48, но размер больше не изменяется. итак, у нас есть (возможно, большая) пустая область со значком 48 в центре.</p><p>обратите внимание, что размер значка рабочего стола по умолчанию в xp был 32x32, а в windows 7 - 48x48. <strong> как следствие, для windows 7 относительно важно иметь значок 48. </strong> в противном случае он масштабируется с меньшего значка, который может выглядеть довольно некрасиво ,.</p><hr><p>просто заметка о совместимости с windows xp: если вы повторно используете значок в качестве значка окна, обратите внимание, что это может привести к сбою приложения, если вы используете сжатый значок 256. решение состоит в том, чтобы либо не сжимать значок, либо создавать вторую версию без (сжатого) значка 256. смотрите <a href="https://stackoverflow.com/questions/12385143/wpf-application-shows-image-format-is-unrecognized/19984844#19984844">здесь</a> для получения дополнительной информации.</p>

<p>после некоторого тестирования с иконкой с 8, 16, 20, 24, 32, 40, 48, 64, 96, 128 и 256 пикселей (256 в png) в windows 7:</p><ul> <li>при разрешении 100%: explorer использует 16, 40, 48 и 256. средство просмотра фотографий windows использует 96. paint использует 256.</li> <li>при разрешении 125%: explorer использует 20, 40 и 256. средство просмотра фотографий windows использует 96. paint использует 256.</li> <li>при разрешении 150%: explorer использует 24, 48 и 256. windows photo viewer использует 96. paint использует 256.</li> <li>при разрешении 200%: explorer использует 40, 64, 96 и 256. средство просмотра фотографий windows использует 128. paint использует 256.</li> </ul><p>таким образом, 8, 32 никогда не использовались (это для меня странно для 32), а 128 только windows photo viewer с очень высоким разрешением экрана, т.е. almot никогда не использовался.</p><p>это означает, что ваш значок должен по крайней мере обеспечить 16, 48 и 256 для windows 7. для поддержки новых экранов с высоким разрешением вы должны предоставить 16, 20, 24, 40, 48, 64, 96 и 256. для windows 7 все изображения могут быть сжаты с использованием png, но для обратной совместимости с windows xp, 16 - 48 не должны быть сжаты.</p>

<p> <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/dn742485.aspx">руководство по значкам microsoft ux</a> говорит:</p><blockquote> <p>"значки приложений и элементы панели управления: полный набор включает 16x16, 32x32, 48x48 и 256x256 (код масштабируется между 32 и 256)".</p> </blockquote><p>для меня это подразумевает (но, к сожалению, не указывает), что вы должны предоставить эти 4 размера.</p><p>дополнительные сведения о цветовых форматах, которые вы также можете найти полезными:</p><blockquote> <ul> <li> <p>"для файлов значков требуются версии 8-битной и 4-битной палитры, чтобы поддерживать настройки по умолчанию на удаленном рабочем столе".</p> </li> <li> <p>"должна быть включена только 32-битная копия изображения 256x256 пикселей, и только изображение 256x256 пикселей должно быть сжато [как png], чтобы уменьшить размер файла".</p> </li> </ul> </blockquote>

<p>в случае с windows 10 это не совсем точно, на самом деле ни один из ответов на stackoverflow не был, я узнал об этом, когда попытался использовать пиксельную графику в качестве значка, и он был изменен, когда не предполагалось (это было легко чтобы увидеть в этом случае причину интерполяции и сглаживания окон) даже ты использовал размеры из этого поста.</p><p>итак, я сделал приложение и выполнил работу со всеми настройками dpi, смотрите его здесь:<br> <a href="https://stackoverflow.com/questions/40749785/windows-10-all-icon-resolutions-on-all-dpi-settings-format-pixel-art-as-icon">windows 10 все разрешения значков на всех настройках dpi</a> <br> вы также можете использовать мое приложение для создания значков, в том числе с интерполяцией ближайшего соседа с сглаживанием, что не делается ни с одним из плохих редакторов, которых я видел.</p><p>если вы хотите только разрешения:<br> <strong> 16, 20, 24, 28, 30, 31, 32, 40, 42, 47, 48, 56, 60, 63, 84, 256 </strong><br> и вы должны использовать все значки png, и все, что вы вставите рядом с ними, не будет отображаться. смотри мой <a href="https://stackoverflow.com/questions/40749785/windows-10-all-icon-resolutions-on-all-dpi-settings-format-pixel-art-as-icon">пост</a> почему.</p>

<p><strong> (обновленный ответ для windows 8/10) </strong></p><p>полный список рекомендаций и размеров см. здесь, в новых рекомендациях по проектированию windows: <a href="https://msdn.microsoft.com/en-us/windows/uwp/controls-and-patterns/tiles-and-notifications-app-assets#asset-types">https://msdn.microsoft.com/en-us/windows/uwp/controls-and-patterns/tiles-and-notifications-app -активы # активов-типов</a> </p><p>все еще включите файл .ico с этими размерами для поддержки устаревшего опыта:</p><ul> <li>16x16</li> <li>24x24</li> <li>32х32</li> <li>48x48</li> <li>256x256</li> </ul>

<p>не 96x96, используйте вместо 64x64. я обычно использую:</p><ul> <li>16 - кнопка статуса/заголовка</li> <li>32 - значок на рабочем столе</li> <li>48 - вид папки</li> <li>64/128 - дополнительные размеры</li> </ul><p>256 работает и на xp, однако старые компиляторы ресурсов иногда жаловались на ошибки "нехватки памяти".</p>

<p>от <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/dn742485(v=vs.85).aspx">рекомендации microsoft msdn</a> :</p><blockquote> <p><strong> значки приложений и элементы панели управления </strong>: полный набор включает 16x16, 32x32, 48x48 и 256x256 (код масштабируется от 32 до 256). требуется формат файла .ico. для классического режима полный набор составляет 16x16, 24x24, 32x32, 48x48 и 64x64.</p> </blockquote><p>таким образом, у нас уже есть стандартные рекомендуемые размеры:</p><ul> <li>16 х 16,</li> <li>24 х 24,</li> <li>32 х 32,</li> <li>48 х 48,</li> <li>64 х 64,</li> <li>256 х 256.</li> </ul><p>если мы хотим поддерживать настройки высокого разрешения, полный список будет также включать следующие размеры:</p><ul> <li>20 х 20,</li> <li>30 х 30,</li> <li>36 х 36,</li> <li>40 х 40,</li> <li>60 х 60,</li> <li>72 х 72,</li> <li>80 х 80,</li> <li>96 х 96,</li> <li>128 х 128,</li> <li>320 х 320,</li> <li>384 х 384,</li> <li>512 х 512.</li> </ul>