Достаточно ли больших значков для дисплеев Retina?
Я разрабатываю программу, которая имеет значки. Мне было интересно, действительно ли мне нужно использовать векторные иконки (так как их трудно найти и найти), или я мог бы просто использовать большие иконки, такие как значки 256x256 (для размеров до 64px)?
2 ответа
Если вы хотите отобразить изображение в 64px, используйте значок в 64px. Как только вы начнете масштабировать, вы потеряете некоторое качество (хотя масштабирование по степеням 2 не так плохо, как произвольные коэффициенты масштабирования)
Однако, когда вы достигаете размеров, превышающих 64 пикселя, эффекты масштабирования становятся все менее заметными, поэтому вы можете начать использовать масштабированные значки, а не зависящие от устройства разрешения, не беспокоясь о потере качества.
Главное - нарисовать основные функции ваших значков в соответствии с наименьшим разрешением общего знаменателя, которое вы ожидаете поддерживать. Например, если вы собираетесь использовать значок 32x32 на некоторых устройствах и 64x64 на других, сделайте линии толщиной 1 пиксель на значках 32x32, что равно 2 пикселям на 64x64. Таким образом, 64x64 будет выглядеть как "более четкая" версия 32x32, а не как более тонкие линии или как "размытые" значки 32x32 (например, когда тонкая черная линия на изображении 64 становится более толстой серой линией из-за сглаживания на 32).
В целом, вы также должны проектировать свою графику в высоком разрешении (например, разрешение "сетчатки" - это глупая маркетинговая уловка, и оно составляет всего лишь около четверти реального разрешения "сетчатки") - вы можете быть уверены, что разрешение экрана снова удвоится, как HDTV уже начинает заменяться на 4К и 8К). Поэтому я бы порекомендовал использовать разрешение 256 или 512 для вашего основного изображения (но все же основывать его функции на сетке 32x32 или 64x64), а затем уменьшить это изображение, а затем подправить его для достижения хорошего качества при более низких разрешениях. Таким образом, если (когда) вам нужен значок с более высоким разрешением, вам не нужно перерисовывать его с нуля. (Если возможно, создайте иконку как векторную графику, а затем просто реэкспортируйте ее с различным разрешением пикселей)
Кроме того, если вы избегаете высококонтрастных краев, ваши значки будут легче масштабироваться (так как масштабирование высококонтрастного края вниз обычно приводит к размытому сглаживающему результату, если только край не идеально совпадает с границами пикселей с более низким разрешением). Таким образом, типичный значок яблока или андроида с мягким оттенком градаций будет уменьшаться намного лучше, чем типичный жесткий высококонтрастный рисунок линии win8)
И наконец, имейте в виду, что только потому, что ваши современные устройства используют 32x32 и 64x64, это не означает, что вы не окажетесь портирующим на устройство, размеры иконок которого в ближайшие 6-12 месяцев будут совсем другими (например, 57x57, 72x72). и т. д.) и масштабирование не будет работать так же хорошо. В этих случаях, чем больше ваше исходное изображение, тем лучше будут результаты его уменьшения (то есть уменьшение масштаба с 512x512 до 72 обычно даст лучшие результаты, чем уменьшение с 128x128 до 72).
Ну, иконки iOS не являются векторной графикой. Это изображения в формате PNG, использующие следующие разрешения:
iPhone non-retina: 57 x 57
iPhone retina: 114 x 114
iPad non-retina: 72 x 72
iPad retina: 144 x 144
Кроме того, если вы разрабатываете для AppStore, вы должны включить файл iTunesArtwork, который также представляет собой PNG размером 512 x 512 пикселей (независимо от того, является ли ваше приложение сетчаткой).